JavaEE——简单认识CSS

文章目录

  • 一、简单了解什么是 CSS
  • 二、CSS 选择器
    • 1.标签选择器
    • 2.类选择器
    • 3.ID 选择器
    • 4.后代选择器
    • 5.子选择器
    • 6.伪类选择器
  • 三、字体属性
    • 1.设置字体家族
    • 2.设置字体大小
    • 3.设置字体粗细
    • 4.文字倾斜
  • 四、文本属性
    • 1.文本对齐
    • 2.文本装饰
    • 3.文本缩进
    • 4.背景设置
  • 五、圆角矩形
  • 六、CSS 盒子模型
    • 1.介绍边框与外边框
    • 2.介绍内边框
  • 七、弹性布局

一、简单了解什么是 CSS

CSS 的工作就是将网页中元素的排版进行精确的控制,实现美化页面的效果。

CSS的基本语法规则如下:
选择器 + {一条 / N条声明}

对于 CSS 有下面几种写的方式:

  • 内部样式
    使用 style 标签,直接将 CSS 写入到 html 文件中。
    <p>这是内部样式</p>
    <!--内部样式-->
    <style>
        p {
            color: red;
            font-size: 30px;
        }
    </style>

在这里插入图片描述

  • 内联样式
    同样使用 style 标签,针对指定的元素设置样式。(此时只对当前元素生效)
    <p style="color: green; font-size: 40px;"> 
        内联样式
    </p>

在这里插入图片描述

  • 外部样式
    将 CSS 代码单独作为一个 .css 文件,通过 link 标签,让 html 引入该文件。
    这是 .css 文件
p { 
    color: blue;
    font-size: 50px;
}

这是 html 的代码

    <!--这里是外部样式的引入方式-->
    <link rel="stylesheet" href="style.css">
    <p>
        外部样式的测试
    </p>

在这里插入图片描述

二、CSS 选择器

1.标签选择器

在 style 标签中使用 {},在 { 前面写上标签名称。 此时,就意味着会选中当前页面中所有指定的标签

    <style>
        p{
            color: blueviolet;
        }
    </style>
    <p>
        这是 css 选择器测试
    </p>

    <div>
        <p>
            这是div中 css 选择器测试
        </p>
        <p>
            这是div中 css 选择器测试
        </p>
        这是一个 div
    </div>

在这里插入图片描述

2.类选择器

可以创建 CSS 类,手动来指定哪些元素使用这个类。

    <style>
        /* 此处定义一个 css 类,名字为 one */
        .one{
            color: aqua;
        }
        .two{
            color: gray;
        }
        .three{
            color: fuchsia;
        }
        .four{
            font-size: 30px;
        }
    </style>

    <div class ="one">
        这是第一个div
    </div>

    <div class="two">
        这是第二个div
    </div>

    <div class="three">
        这是第三个div
    </div>

在这里插入图片描述
到这里,我们已知类选择器的使用方式,但是,还需要注意:
一个类,可以被一个元素引用,也可以被多个元素引用。
一个元素可以引用一个类,也可以引用多个类。

    <div class ="one four">
        这是引用了多个类的div
    </div>

在这里插入图片描述

3.ID 选择器

html 中的每个元素,都是可以设置一个唯一的 id 作为元素的身份标识

    <style>
        #oneDiv{
            color: darkred;
        }
        #twoDiv{
            color: darkorange;
        }
    </style>


    <div id="oneDiv">
        这是一个测试ID选择器的div
    </div>

    <div>
        这是一个测试ID选择器的另一个div
    </div id="twoDiv">

在这里插入图片描述

总结,类选择器 和 ID选择器 两者的特点。
类选择器, 是可以让多个元素应用用一个类的。
ID 选择器,只能针对唯一元素生效,一个页面中只能有唯一的 ID。

4.后代选择器

    <style>
        ul li {
            color: red;
        }
    </style>

这里代码的含义是,在页面中找到所有的 ul然后在这些 ul 中找到所有的 li

注:
这里的 li 只要是 ul 的后代即可,不一定非得是 “子元素”。

    <ol>
        <li>aaa</li>
        <li>bbb</li>
        <li>ccc</li>
    </ol>

    <ul>
        <li>aaa</li>
        <ul>
            <li>111</li>    
        </ul>
        <li>bbb</li>
        <li>ccc</li>
    </ul>

在这里插入图片描述

5.子选择器

只是找到匹配的单一的子元素,不找其他孙子元素之类的。

    <style>
        .test>ul{
            color: rgb(223, 92, 5);
        }
    </style>

这里的代码含义是,只在 .test 的子元素中找到 ul 标签。

    <div class="test">
        <ul>
        <li>aa</li>
        <li>bb</li>
        <li>cc</li>            
        </ul>
    </div>

在这里插入图片描述

6.伪类选择器

前面 的选择器是选中某个元素。
伪类选择器选中的是某个元素的特定状态

:hover 鼠标悬停时的状态。
:active 鼠标按下时的状态。

    <style>
        .one1:hover{
            color: green;
            font-size: 30px;
        }
        .one1:active{
            color: greenyellow;
            font-size: 50px;
        }
    </style>
    <div class="one1">
        这是一个测试伪类选择器的div
    </div>

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、字体属性

1.设置字体家族

font - family 当前使用哪种字体来显示。

    <style>
        .one{
            font-family: 宋体;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述
注: 这个属性指定的字体,需要是系统已经安装了的。

2.设置字体大小

font - size 单位是 px(像素)

    <style>
        .one{
            font-size: 40px;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述

3.设置字体粗细

font - weight
实际设置是有两种设置风格。
1.使用单词
在这里插入图片描述

    <style>
        .one{
            font-weight: bold;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述

2.使用数字

    <style>
        .one{
            font-weight: 100;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述

4.文字倾斜

/* 设置倾斜 */
font-style: italic;
/* 取消倾斜 */
font-style: normal;

在这里插入图片描述

四、文本属性

1.文本对齐

text - align 属性来设置对齐方式。

对齐方式有下面三种:
center:居中对齐
left:左对齐
right:右对齐

在这里就只演示 center 居中对齐.

    <style>
        .one{
            text-align: center;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述

2.文本装饰

text-decoration 属性来进行文本装饰。

装饰的常用取值有下面几个:
underline 下划线
none 什么都没有,可以给 a 标签去掉下划线
overline 上划线
line - through 删除线

下划线

    <style>
        .one{
            text-decoration: underline;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述

none

    <style>
        a{
            text-decoration: none;
        }
    </style>
    <br>
    <a href="#">百度</a>
    <br>

在这里插入图片描述

overline 上划线

    <style>
        .one{
            text-decoration: overline;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述

line - through 删除线

    <style>
        .one{
            text-decoration: overline;
        }
    </style>
    <div class="one">
        这是一个div
    </div>

在这里插入图片描述

3.文本缩进

text - indent 每个段落首行缩进两个文字。
这里常用的单位是 em 。这个单位表示的是一个相对的量。是以问字尺寸为基础进行设置的。

    <style>
        .one{
            font-size: 40px;
            text-indent: 2em;
            line-height: 60px;
        }
    </style>
    <div class="one">
        文本缩进
    </div>

在这里插入图片描述
这就很明显的展示出了是相对于文字进行缩进的。

这里要说明一个新名词 —— 行高
行高 = 文字高度 + 行间距
在这里插入图片描述

4.背景设置

设置背景分为两种:
1.设置背景颜色: background - color 设定单一颜色。
2.设置背景图片: background - image:url(图片路径);

这里我直接演示如何设置背景图片

    <style>
        .one{
            background-image: url(touxiang.png);
            /* 这里设定一个较大的高度便于观察 */
            height: 1000px;
        }
    </style>
    <div class="one">
        这是背景
        Lorem ipsum dolor sit amet consectetur adipisicing elit. Labore nemo, necessitatibus beatae voluptatibus rem esse, quam unde voluptatem excepturi impedit pariatur nulla nobis facilis voluptates odit delectus, incidunt qui deleniti.
    </div>

在这里插入图片描述
如图所示,会出现一个这样平铺的效果。

background - repeat: no-repeat 这段代码可以解决图片在页面平铺的问题。

    <style>
        .one{
            background-image: url(touxiang.png);
            /* 这里设定一个较大的高度便于观察 */
            background-repeat: no-repeat;            
            height: 1000px;
        }
    </style>
    <div class="one">
        这是背景
         Lorem ipsum dolor sit amet consectetur adipisicing elit. Sit vel soluta cupiditate laborum ipsa ex voluptatibus obcaecati, esse quisquam nisi, nulla facilis saepe consectetur voluptates repellendus magnam voluptas nostrum optio.
    </div>

在这里插入图片描述

此时,我们有会发现一个问题,就是背景图片出现在了左上角。如果我们想将图片转移到中间,呢么,background-position:
center center;
这串代码可以解决问题。
这里就不在演示

background - size 设置背景图的尺寸。
由此,来实现背景图片的页面全覆盖

    <style>
        .one{
            background-image: url(touxiang.png);
            /* 这里设定一个较大的高度便于观察 */
            background-repeat: no-repeat;            
            height: 1000px;
            background-position: center center;
            background-size: cover;
        }
    </style>
    <div class="one">
        这是背景
         Lorem ipsum dolor sit amet consectetur adipisicing elit. Sit vel soluta cupiditate laborum ipsa ex voluptatibus obcaecati, esse quisquam nisi, nulla facilis saepe consectetur voluptates repellendus magnam voluptas nostrum optio.
    </div>

注: 这里的截图不好展示,大家可以自行试验一下。

五、圆角矩形

在我们编辑页面时,可以使用 div 通过限制其高度,宽度。以此来实现一个矩形。
但是,有时需要通过圆角矩形来让页面更加美化。
对此,使用 border-radius: 可以实现需求。

    <style>
         .one{
            /* 通过设置宽高来限制范围 */
            width: 200px;
            height: 100px;
            /* 设置矩形的背景颜色 */
            background-color: black;
            color: white;

            text-align: center;
            line-height: 100px;
            /* 设定矩形的角的弧度像素数 */
            border-radius: 10px;
        }       
    </style>
        <div class="one">
        <p>
        这是一个测试圆角矩形的div            
        </p>
    </div>

在这里插入图片描述

六、CSS 盒子模型

在这里插入图片描述
如上图所示,这就是一个 html 的元素基本布局规则。

1.介绍边框与外边框

要改变边框属性需要使用到一个关键字 border

默认情况下,直接使用 border 是直接设置了四个方向
要实现准确的设置还有下面的操作:
border - left: 设置左边框
border - right:设置右边框
border - top:设置顶部边框
border - bottom:设置下方边框

为了方便后面的解释,这里在引入一个关键字。

margin-bottom: 这个关键字是控制外边距,即,控制盒子与盒子之间的距离。

    <style>
                .one{
            width: 300px;
            height: 100px;
            background-color: cadetblue;
            color: blue;

            text-align: center;
            line-height: 100px;
            border: 10px black solid;

            /* 控制外边距让两个元素之间有间隙 */
            margin-bottom: 5px;
        } 
		/*这是对比元素*/
		        .contrast{
            width: 300px;
            height: 100px;
            background-color: chartreuse;
            color: black;

            text-align: center;
            /* 控制外边距让两个元素之间有间隙 */
            margin-bottom: 10px;
        }
    </style>
    <div class="eight">
        这是一个测试边框属性的div            
    </div>
    <div class="contrast">
        这是对比的div
    </div>

在这里插入图片描述
如上图所示,我们发现边框的添加,会导致盒子的撑大。
对此,这里再引入一个属性 box-sizing: border-box;

        .one{
            width: 300px;
            height: 100px;
            background-color: cadetblue;
            color: blue;

            text-align: center;
            line-height: 100px;
            border: 10px black solid;

            box-sizing: border-box; 

            /* 让两个元素之间有间隙 */
            margin-bottom: 5px;
        } 

在这里插入图片描述

这里介绍几种边框样式:

  • 粗细: border-width
  • 样式: border-style,
  • 默认没边框.
  • 实线边框 solid
  • 虚线边框 dashed
  • 点线边框 dotted
  • 颜色: border-color

2.介绍内边框

对于内边框,这里的属性关键字是 padding

padding 在这里应用有下面几种形式

  • padding:10px; 表示四个方向都是 10
  • padding:10px 20px; 表示上下边距是10,左右边距是 20
  • padding:10px 20px 30px 40px; 上右下左(顺时针方向设定)

这里使用第二种形式解释:

    <style>
                .one{
            width: 300px;
            height: 100px;
            background-color: aquamarine;
            color: blueviolet;

            text-align: left;
            /* line-height: 100px; */
            border: 10px rgb(168,168,0) solid;

            box-sizing: border-box;

            padding: 10px 20px;

            margin-bottom: 15px;
        }
    </style>
    <div class="nine">
        这是一个测试内边距属性的div
    </div >

在这里插入图片描述

七、弹性布局

首先,我们先创建出一个 div,内部包含三个 span

    <style>
        div{
            width: 100%;
            height: 150px;
            background-color: red;
        }

        div>span{
            background-color: green;
            width: 100px;
            height: 100px;
        }
    </style>
        
    <div>
        <span>1</span>
        <span>2</span>
        <span>3</span>
    </div>

在这里插入图片描述

开启弹性布局
display:flex;

要给水平排列的父元素,设置 flex。这样水平方向上的尺寸边距就会变得比较可控。

设置元素的水平排列方式
justify-content: space-around;

这里的排列方式的值,常用的有下面几条:
在这里插入图片描述

设置元素的垂直排列方式
align-items:

这里展现一个简单调整过的界面

    <style>
        div{
            width: 100%;
            height: 150px;
            background-color: red;
            display: flex;
            justify-content: space-around;
            align-items: center;
        }

        div>span{
            background-color: green;
            width: 100px;
            height: 100px;
        }
    </style>
        
    <div>
        <span>1</span>
        <span>2</span>
        <span>3</span>
    </div>

在这里插入图片描述
码子不易,您小小的点赞是对我最大的鼓励!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/207175.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

将不同时间点的登录状态记录转化为不同时间段的相同登录状态SQL求解

题目 有不同时间点的登录状态记录表state_log如下 请使用sql将其转化为如下表的不同时间段的相同登录状态记录 思路分析&#xff1a; 此类问题需要用到lag或lead函数取上下行对应的数据&#xff0c;然后对前后结果做比较打标签&#xff08;0或1&#xff09;&#xff0c;再…

List集合,遍历,数据结构

一.List常见的方法&#xff1a; 二. List集合的遍历方式 除了 迭代器遍历 增强for遍历 Lambda表达式遍历&#xff0c;还有自己独有的普通for遍历&#xff0c;列表迭代器遍历 1.迭代器遍历 2.增强for遍历 3.Lambda表达式遍历 4.普通for遍历 5.列表迭代器遍历 列表迭代器相对于…

【网络安全】用永恒之蓝(Eternal blue)测试windows系统的安全性

一、kali默认账户和密码都为kali 攻击机&#xff1a;Linux 的 kali 目标机&#xff1a;Windows7 x64 二、kali、metasploit、metasploit 攻击 windows操作系统、metasploit 攻击 永恒之蓝 全流程 ①kali&#xff1a;是黑客攻击机。开源免费的Linux操作系统&#xff0c;含有300…

Linux Ubuntu protobuf 安装方法

文章目录 安装方法检验安装意外状况 安装方法 去GitHub官网找下载地址 安装 protobuf 21.11 GitHub 资源地址 选择安装版本 &#xff08;是一个URL网址&#xff09; 例如这里选用&#xff1a;protobuf-all-21.11.zip 资源 安装依赖库&#xff0c;执行指令 6. sudo apt-get …

class-dump 混淆加固、保护与优化原理

​ 进行逆向时&#xff0c;经常需要dump可执行文件的头文件&#xff0c;用以确定类信息和方法信息&#xff0c;为hook相关方法提供更加详细的数据.class-dump的主要用于检查存储在Mach O文件的Objective-C中的运行时信息&#xff0c;为类&#xff0c;类别和协议生成声明信息&am…

Redis7--基础篇5(管道、发布订阅)

管道是什么 管道(pipeline)可以一次性发送多条命令给服务端&#xff0c;服务端依次处理完完毕后&#xff0c;通过一条响应一次性将结果返回&#xff0c;通过减少客户端与redis的通信次数来实现降低往返延时时间。pipeline实现的原理是队列&#xff0c;先进先出特性就保证数据的…

10-微信小程序 图片 相机 二维码 动画相关API(实现选择相册、拍照、录像、动画)

10-微信小程序 图片 相机 二维码 动画相关API(实现选择相册、拍照、录像、动画) 文章目录 10.1选择图片wx.chooseImage(Object object)object.success 回调函数代码效果 10.2 预览图片wx.previewImage(Object object)代码效果 10.3 相机APICameraContext wx.createCameraContex…

科技平权,哪吒汽车又双叒OTA了

OTA升级“学霸”再有新动作。11月30日&#xff0c;平均一、两个月就会OTA升级一次的哪吒汽车再度“进化”&#xff0c;同时启动哪吒S和哪吒GT的新一轮OTA升级。此轮OTA升级&#xff0c;哪吒汽车不但将百万豪车才有的赛道级技术&#xff0c;价值数万元的哪吒卫士、一键遥控泊车功…

Everything结合内网穿透搭建在线资料库并实现随时随地远程访问

Everythingcpolar搭建在线资料库&#xff0c;实现随时随地访问 文章目录 Everythingcpolar搭建在线资料库&#xff0c;实现随时随地访问前言1.软件安装完成后&#xff0c;打开Everything2.登录cpolar官网 设置空白数据隧道3.将空白数据隧道与本地Everything软件结合起来总结 前…

ubuntu离线安装包下载和安装

一、确认本机ubuntu二的er发行版本 方法1: rootac810:/home/ac810/alex# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal 方法2: rootac810:/home/ac810/alex# c…

深度学习手势识别 - yolo python opencv cnn 机器视觉 计算机竞赛

文章目录 0 前言1 课题背景2 卷积神经网络2.1卷积层2.2 池化层2.3 激活函数2.4 全连接层2.5 使用tensorflow中keras模块实现卷积神经网络 3 YOLOV53.1 网络架构图3.2 输入端3.3 基准网络3.4 Neck网络3.5 Head输出层 4 数据集准备4.1 数据标注简介4.2 数据保存 5 模型训练5.1 修…

基础课14——语音识别

ASR 是自动语音识别&#xff08;Automatic Speech Recognition&#xff09;的缩写&#xff0c;是一种将人类语音转换为文本的技术。ASR 系统可以处理实时音频流或已录制的音频文件&#xff0c;并将其转换为文本。它是一种自然语言处理技术&#xff0c;广泛应用于许多领域&#…

计算机毕业设计|基于SpringBoot+SSM+MyBatis框架的迷你仿天猫商城购物系统设计与实现

计算机毕业设计|基于SpringBoot+MyBatis框架的仿天猫商城购物系统设计与实现 迷你仿天猫商城是一个基于SpringBoot+SSM+MyBatis框架的综合性B2C电商平台,需求设计主要参考天猫商城的购物流程:用户从注册开始,到完成登录,浏览商品,加入购物车,进行下单,确认收货,评价等…

2023年小美赛认证杯D题:望远镜的微光因子(The Twilight Factor of a Telescope)思路模型代码解析

2023年小美赛认证杯D题&#xff1a;望远镜的微光因子&#xff08;The Twilight Factor of a Telescope&#xff09; 【请电脑打开本文链接&#xff0c;扫描下方名片中二维码&#xff0c;获取更多资料】 一、问题重述 当我们使用普通的光学望远镜在昏暗的光线中观察远处的目标…

AIGC实战——生成对抗网络(Generative Adversarial Network)

AIGC实战——生成对抗网络 0. 前言1. 生成对抗网络1.1 生成对抗网络核心思想1.2 深度卷积生成对抗网络 2. 数据集分析3. 构建深度卷积生成对抗网络3.1 判别器3.2 生成器3.3 DCGAN 模型训练 4. GAN 训练技巧4.1 判别器强于生成器4.2 生成器强于判别器4.3 信息量不足4.4 超参数 小…

【开源】基于Vue和SpringBoot的快递管理系统

项目编号&#xff1a; S 007 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S007&#xff0c;文末获取源码。} 项目编号&#xff1a;S007&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 数据中心模块2.2 快递类型模块2.3 快…

【Linux】-信号-(信号的产生,保存,处理,以及os是怎么读取硬件的输入,硬件异常和coredump,定时器的原理简单的用户态和内核态的详细介绍)

&#x1f496;作者&#xff1a;小树苗渴望变成参天大树&#x1f388; &#x1f389;作者宣言&#xff1a;认真写好每一篇博客&#x1f4a4; &#x1f38a;作者gitee:gitee✨ &#x1f49e;作者专栏&#xff1a;C语言,数据结构初阶,Linux,C 动态规划算法&#x1f384; 如 果 你 …

Python datetime 字符串 相互转 datetime

字符串转 datetime from datetime import datetime# 定义要转换的日期时间字符串 dt_str "2021-09-30 15:48:36"# 使用datetime.strptime()函数进行转换 dt_obj datetime.strptime(dt_str, "%Y-%m-%d %H:%M:%S") print(dt_obj)datetime 转字符串 from …

(蓝桥杯)1125 第 4 场算法双周赛题解+AC代码(c++/java)

题目一&#xff1a;验题人的生日【算法赛】 验题人的生日【算法赛】 - 蓝桥云课 (lanqiao.cn) 思路&#xff1a; 1.又是偶数&#xff0c;又是质数&#xff0c;那么只有2喽 AC_Code:C #include <iostream> using namespace std; int main() {cout<<2;return 0; …

elasticsearch聚合、自动补全、数据同步

目录 一、数据聚合1.1 聚合的种类1.2 DSL实现聚合1.2.1 Bucket聚合语法1.2.2 聚合结果排序1.2.3 限定聚合范围1.2.4 Metric聚合语法 1.3 RestAPI实现聚合 二、自动补全2.1 拼音分词器2.2 自定义分词器2.3 自动补全查询2.4 RestAPI实现自动补全 三、数据同步3.1 思路分析3.1.1 同…