CSS

层叠样式表

主要用于调节HTML标签的各种样式
标签的两大属性:
    1.class属性
        分类查找,主要用于批量查找
    2.id属性
        精确查找,点对点的查找
我们之所以将标签分为这两大属性主要是用来区分标签的,页面都是由HTML组成的,且一个页面有许多HTML标签都是相同的,但是这些相同的标签在不同的位置样式可能是不同的,所以我们需要将之区分开来

# 我们学习css是需要先学会查找标签,然后才能调整对应标签的样式
1.css语法结构
    选择器{
        样式名1:样式值1,
        样式名2:样式值2
    }
2.css注释语法
    /*注释内容*/
3.引入css的多种方式
    1.head内style标签内编写(学习css是推荐使用)
    2.head内link标签引入(主流写法)
    3.标签内直接通过style属性编写(不推荐使用)

选择器

1.CSS基本选择器
    1.标签选择器(直接按照标签名查找标签)
		div {
            color: red;
			}
    2.类选择器(按照标签的class值查找标签)
        .c1 {
            color: red;
        }
    3.id选择器(根据标签的id值精准查找标签)
        #d1 {
            color: yellow;
        }
    4.通用选择器(直接选择页面所有的标签)
        * {
            color: blue;
        }

2.CSS组合器
    1.后代选择器(空格)
        div span {
            color: red;
        }
        查找div标签内所有的span标签
    2.儿子选择器(大于)
        div>span {
            color: yellow;
        }
		查找div标签下的第一级的span标签
    3.毗邻选择器(加号)
        div+span {
            color: blue;
        }
        查找与div标签紧挨着的span标签,如果与div标签紧挨着的不是span标签那么该选择器不生效
    4.弟弟选择器(小波浪号)
        div~span {
            color: yellow;
        }
        查找与div标签同级的span标签

3.分组与嵌套
    1.div,p,span {
            color: yellow;
        }
     多个选择器合并查找
    2. div.c1 {
        color: red;
    }
     查找class类含有c1的div的标签
    3..c1 p.c2 {
        color: yellow;
    }
     查找含有c1样式值中含有c2样式值的p标签

4.属性选择器
    [username] {
        color: red;
    }  # 按照属性名查找
    [username='jason'] {
        color: red;
    }  # 按照属性名等于属性值查找

5.伪类选择器
    1.鼠标移动到连接上
        a:hover {
            color: red;
        }
     2.input获取焦点(鼠标点击)之后采用的样式
        input:focus {
            background-color: red;
        }

6.伪元素选择器
    使用css添加文本无法正常选中
    1.在文本之前
        p:before {
            content: '一二三';
            color: red;
        }
    2.在文本之后
        p:after {
            content: '三二一';
            color: red;
        }

选择器优先级

1.选择器相同,导入方式不同
    就近原则
2.原则器不同,导入方式相同
    内联样式 > id选择器 > 类选择器 > 标签选择器

样式调节

1.字体样式
    font-size:24px  # 字体大小
    font-weight用来设置字体的字重(粗细)。
        值	       描述
        normal	    默认值,标准粗细
        bold	    粗体
        bolder	    更粗
        lighter	    更细
        100~900	    设置具体粗细,400等同于normal,而700等同于bold
        inherit	    继承父元素字体的粗细值
    字体颜色 三种模式
        color: red;  # 直接填写颜色英文
        color: #3d3d3d;  # 填写颜色代码
        color: rgb(111,111,111)  # rgb值 
        color: rgba()  # 与rgb一样,只是最后一个a用来控制透明度
    文字对齐
        text-align 属性规定元素中的文本的水平对齐方式。
            值	     描述
            left	  左边对齐 默认值
            right	  右对齐
            center	  居中对齐
            justify	  两端对齐
    文字装饰
        text-decoration 属性用来给文字添加特殊效果。
            值				描述
            none		 	默认。定义标准的文本。
            underline	 	定义文本下的一条线。
            overline	 	定义文本上的一条线。
            line-through	定义穿过文本下的一条线。
            inherit		 	继承父元素的text-decoration属性的值
            
2.背景属性
	div {
            width: 800px;
            height: 800px;  # 背景大小
            /*background-color: red;*/  # 背景颜色
            /*background-image: url("666.png");*/  # 以图片作为背景
            /*background-repeat: no-repeat;*/  # 背景图片不平铺满整个背景,正常默认平铺满
            /*background-repeat: repeat-x;*/  # 背景图片只在水平方向上平铺
            /*background-repeat: repeat-y;*/  # 背景图片只在上下方向上平铺
            /*background-position: center center;*/  # 背景图片居中
            background:  url("666.png") blue no-repeat center center; 
            # 当多个属性名有相同的前缀 那么可以简写一次性完成
        }
	

边框

用于给标签添加样式
border-width: 5px;  # 边框宽度
border-style: solid;  # 边框样式
border-color: red;  # 边框颜色
上面的可以直接简写成
    border: 5px solid red;
# 如果只是设置其中一面的边框的话加上方向就行了 border-left]\

画圆(就是将边框设置为圆形)  #边框长宽一样则是正圆
border-radius: 50%;

display

用于控制HTML元素的显示效果
display:none  # 彻底的隐藏标签,页面上不会显示标签,也不会保留标签的位置
起到隐藏作用的还有一个
visibility:hidden  
# 可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局

盒子模型

我们可以将标签看成是一个盒子,标签内的内容就是盒子内的物体
1.盒子内的物体               content(内容)
2.物体与盒子内部边界的距离    padding(内边距)
3.快递盒包装                 border(边框)
4.快递盒与快递盒之间的距离    margin(外边框)

padding使用方法
padding: 10px;  # 上下左右
padding: 10px 20px;  # 上下  左右
padding: 10px 20px 30px;  # 上  左右  下
padding: 10px 20px 30px 40px;  # 上  右  下  左
    
margin使用方法与padding相同 
针对标签的嵌套水平方向可以居中
margin: 0 auto;

浮动

浮动是用来做页面布局的,使用方法就是 float:left\right
但是使用浮动带来的影响就是会造成父标签塌陷,这是因为浮动的元素是脱离正常文档流的
解决浮动最好的办法就是先写好样式类,谁塌陷了就给谁添加该样式类就行了
样式类
    .clearfix:after {
        content: '';
        display: block;
        clear: both;
    }

溢出

就是填充的内容超出了标签的大小
比如是图片超出了标签大小,那么我们可以让它自适应
div img {
    max-width: 100%;
}  # 需要单独写

定位

针对标签的定位有四种状态
    1.static静态        标签默认的状态,正常状态下无法通过定位的参数来移动
    2.relative相对定位  基于标签原来的位置
    3.absolute绝对定位  基于某个定位过的父标签做定位
    4.fixed固定定位     基于浏览器窗口固定不动,无论窗口是否滚动都会在设置好的固定位置

z-index

用于设置对象的层叠顺序
    1.z-index值表示谁在谁上面,数值大的压着数值小的
    2.只有定位了的原色才能有z-index,浮动元素用不了
    3.z-index是一个正整数,默认的z-index值为零,如果大家的z-index值相同,那么谁写在HTML后面谁就压着别人
    4.定位了的元素永远压着没有定位的元素  
posted on   zyg111  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示