css复习二

选择器进阶:{

复合选择器:{  后代选择器:

作用:根据HTML标签的嵌套关系,选择父元素后代中满足条件的元素
选择器语法:选择器 1 选择器2{cSs}
结果:
在选择器1所找到标签的后代(儿子、孙子、重孙子.)中,找到满足选择器2的标签,设置样式
注意点:
             1.后代包括:儿子、孙子、重孙子…
             2.后代选择器中,选择器与选择器之前通过空格隔开

子代选择器:{

作用:根据HTML标签的嵌套关系,选择父元素子代中满足条件的元素
选择器语法:选择器1>选择器2{CSs}
结果:在选择器1所找到标签的子代(儿子)中,找到满足选择器2的标签,设置样式
注意点:
             1.子代只包括:儿子
             2.子代选择器中,选择器与选择器之前通过>隔开

}

}

并集选择器:{

作用:同时选择多组标签,设置相同的样式
选择器语法:选择器1,选择器2{css}
结果:找到选择器1和选择器2选中的标签,设置样式
注意点:
1.并集选择器中的每组选择器之间通过  ,分隔
2.并集选择器中的每组选择器可以是基础选择器或者复合选择器
3.并集选择器中的每组选择器通常一行写一个,提高代码的可读性

}

交集选择器:{

作用:选中页面中同时满足多个选择器的标签
选择器语法:选择器1选择器2{css}
结果:(既又原则)找到页面中既能被选择器1选中,又能被选择器2选中的标签,设置样式
注意点:
            1.交集选择器中的选择器之间是紧挨着的,没有东西分隔
            2.交集选择器中如果有标签选择器,标签选择器必须写在最前面

}

hover伪类选择器:{

作用:选中鼠标悬停在元素上的状态,设置样式
选择器语法:选择器:hover{css}
注意点:
           1.伪类选择器选中的元素的某种状态

}

Emmet语法:{

}

背景相关属性:{

背景颜色:{

属性名:background-color(bgc)
属性值:
颜色取值:关键字、rgb表示法、rgba表示法、十六进制.
注意点:
           1.背景颜色默认值是透明:rgba(O,0,0,0)、transparent
           2.背景颜色不会影响盒子大小,并且还能看清盒子的大小和位置,一般在布局中会习惯先给盒子设置背景颜色

}

背景照片:{

属性名:background-image(bgi)
属性值:background--image:urL('图片的路径');
注意点:
             1.背景图片中u中可以省略引号
             2.背景图片默认是在水平和垂直方向平铺的
             3.背景图片仅仅是指给盒子起到装饰效果,类似于背景颜色,是不能撑开盒子的

如果照片大小和盒子大小有问题,那么会 进行调整

}

背景平铺:{

 

}

背景位置:{

正数:向右向下移动;负数:向左向右移动
注意:背景色和背景图只显示在盒子里面

}

背景相关属性连写:{

属性名:background(bg)
属性值:
单个属性值的合写,取值之间以空格隔开
书写顺序:
推荐:background:color image repeat position
省略问题:
可以按照需求省略,不分先后顺序
特殊情况:在pc端,如果盒子大小和背景图片大小一样,此时可以直接写background:url0
注意点:
如果需要设置单独的样式和连写

①要么把单独的样式写在连写的下面、

②要么把单独的样式写在连写的里面

如果背景图位置是按照数值来,那么我们需要按照先水平后垂直的顺序来写

}

(拓展)img标签和背景图片的区别
需求:需要在网页中展示一张图片的效果?
方法一:直接写上mg标签即可
img标签是一个标签,不设置宽高默认会以原尺寸显示


方法二:div标签+背景图片
需要设置div的宽高,因为背景图片只是装饰的CSS样式,不能撑开div标签

}}

元素显示模式:{

块级元素:{

显示特点:
1.独占一行(一行只能显示一个)
2.宽度默认是父元素的宽度,高度默认由内容撑开
3.可以设置宽高
代表标签:div、p、h系列、ul、li、dl、dt、dd、form、header、nav、footer..

}
行内元素:{

显示特点:
1.一行可以显示多个
2.宽度和高度默认由内容撑开
3.不可以设置宽高
代表标签:a、span、b、u、i、s、strong、ins、em、del.…

}
行内块元素:{

显示特点:
1.一行可以显示多个
2.可以设置宽高
代表标签:input、.textarea、button、select..
特殊情况:img标签有行内块元素特点,但是Chrome调试工具中显示结果是inline

}
元素显示模式转换:

拓展1:HTML嵌套规范注意点
1.块级元素一般作为大容器,可以嵌套:文本、块级元素、行内元素、行内块元素等等.
但是:p标签中不要嵌套div、p、h等块级元素
2.a标签内部可以嵌套任意元素
但是:a标签不能嵌套a标签

}

css特性:{

继承性:{

特性:子元素有默认继承父元素样式的特点(子承父业)
可以继承的常见属性(文字控制属性都可以继承)
1.color
2.font-style、font-weight、font-size、font-family
3.text-indent,text-align
4.line-height
注意点:
可以通过调试工具判断样式是否可以继承

继承失败情况:

a标签的color会继承失效
h系列标签的font-size会继承失效

}

层叠性:{

特性:
1.给同一个标签设置不同的样式→此时样式会层叠叠加→会共同作用在标签上
2.给同一个标签设置相同的样式→此时样式会层叠覆盖→最终写在最后的样式会生效
注意点:
1.当样式冲突时,只有当选择器优先级相同时,才能通过层叠性判断结果

}}

优先级:{

特性:不同选择器具有不同的优先级,优先级高的选择器样式会覆盖优先级低选择器样式
优先级公式:
继承<通配符选择器<标签选择器<类选择器<id选择器<行内样式<!important
注意点:
1.!important?写在属性值的后面,分号的前面!
2.!important不能提升继承的优先级,只要是继承优先级最低!
3.实际开发中不建议使用!important。

权重叠加运算:{

都是继承,继承里面谁高,看继承哪个父级,哪个父级高,哪个选择器生效

} }

扩展:{

调试工具:

}

css盒子模型:{

盒子模型介绍:{

盒子的概念
1.页面中的每一个标签,都可看做是一个“盒子”,通过盒子的视角更方便的进行布局
2.浏览器在渲染(显示)网页时,会将网页中的元素看做是一个个的矩形区域,我们也形象的称之为盒子
盒子模型:
CSS中规定每个盒子分别由:内容区域(content)、内边距区域(padding)、边框区域(border)、外边距区域(margin)构成,这就是盒子模型
记忆:可以联想现实中的包装盒

}

内容区域的宽度和高度:{

作用:利用width和height属性默认设置是盒子内容区域的大小
属性:width/height
常见取值:数字+px

}

边框(border)—连写形式:{

属性名:border
属性值:单个取值的连写,取值之间以空格隔开
如:border:10px solid red;      (边框像素 线条种类 颜色)
快捷键:bd+tab

}

内边距:{

}

盒子模型自动内减:{

这个地方我们通过在css内加一行代码,就可以让其自动内减:(box-sizing:border-box)

 }

外边距:{

外边距的具使用方式与内边距使用方式一直,可以用四个数值了控制

注意:下图只是显示使用方式,外边距的属性名:margin

}

清除默认内外边距:{

场景:因为每一个标签都相当于一个盒子,所以浏览器会默认给部分标签设置默认的margin和padding,但一般在项目开始前需要先清除这些标签默认的margin和padding,后续自己设置
比如:body标签默认有margin:8px
比如:p标签默认有上下的margin
比如:ul标签默认由上下的margin和padding-left

解决方法:

按照上面图片里的代码,将所有的内外边距清除

}

版心居中:

扩展知识点:{

外边距折叠现象一①合并现象{
场景:垂直布局的块级元素,上下的margin会合并
结果:最终两者距离为marg的最大值
解决方法:避免就好
只给其中一个盒子设置margin即可   }

外边距折叠现象-②塌陷现象{
场景:互相嵌套的块级元素,子元素的margin-top会作用在父元素上
结果:导致父元素一起往下移动
解决方法:
1.给父元素设置border--top或者padding-top(分隔父子元素的margin-top)
2.给父元素设置overflow:hidden
3.转换成行内块元素
4.设置浮动   }

行内元素的内外边距的问题:{

 }}

扩展知识点:如果需要去掉无序列表前的点, 可以使用:list-style:none     }

css浮动:{

结构伪类选择器:{

 

}
伪元素:{

 默认是行内元素,宽高不生效,content属性必须添加,否则伪元素不生效

}
标准流:{

标准流:又称文档流,是浏览器在渲染显示网页内容时默认采用的一套排版规则,规定了应该以何种方式排列元素
常见标准流排版规则:
1.块级元素:从上往下,垂直布局,独占一行
2.行内元素或行内块元素:从左往右,水平布局,空间不够自动折行

}
浮动:{   可以让标签之间没有间隙

作用:环绕文字,属性名:(float:)

作用:网页布局,属性名:(float:)

 注意两个作用的属性运用方式、

浮动的标签顶对齐
浮动:在一行排列,宽高生效-·浮动后的标签具备行内块特点

特点:

浮动元素会脱离标准流(简称:脱标),在标准流中不占位置

相当于从地面飘到了空中
浮动元素比标准流高半个级别,可以覆盖标准流中的元素
浮动找浮动,下一个浮动元素会在上一个浮动元素后面左右浮动
浮动元素有特殊的显示效果
一行可以显示多个
可以设置宽高

}

扩展:


清除浮动:{

含义:清除浮动带来的影响
影响:如果子元素浮动了,此时子元素不能撑开标准流的块级父元素
原因:子元素浮动后脱标→不占位置
目的:需要父元素有高度,从而不影响其他网页元素的布局

如果子元素有浮动,父元素没有高度,后面的标准流盒子会受影响,显示到上面的位置

清除浮动的方法一②额外标签法
操作:
1.在父元素内容的最后添加一个块级元素
2.给添加的块级元素设置clear:both
特点:
缺点:会在页面中添加额外的标签,会让页面的HTML结构变得复杂

清除浮动的方法一③单伪元素清除法

 注意:补充写法多的两行代码是为了代码有更好的兼容性

清除浮动的方法一④双伪元素清除法

 清除浮动的方法一④双伪元素清除法

清除浮动的方法一⑤给父元素设置overflow:hidden
操作:1.直接给父元素设置overflow:hidden
特点:
优点:方便

}

扩展:

}

定位:{

网页常见布局方式:{
标准流:
          1.块级元素独占一行→垂直布局
          2.行内元素/行内块元素一行显示多个→水平布局
浮动:
          1.可以让原本垂直布局的块级元素变成水平布局
定位:
          1.可以让元素自由的摆放在网页的任意位置
          2.一般用于盒子之间的层叠情况       }

定位的常见应用场景:
          1.可以解决盒子与盒子之间的层叠问题
          2.定位之后的元素层级最高,可以层叠在其他盒子上面
          3.可以让盒子始终固定在屏幕中的某个位置

使用定位的步骤:{

 相对定位:{

介绍:自恋型定位,相对于自己之前的位置进行移动
代码:position:relative;
特点:
1.需要配合方位属性实现移动
2.相对于自己原来位置进行移动
3.在页面中占位置一没有脱标

如果在使用过程中,没有配合方位属性来实现移动,那么就不会移动

如果left和right都有,以left为准;top和bottom都有以top为准,按照左上原则进行移动


应用场景:
1,配合绝对定位组CP(子绝父相:父级相对定位;子级绝对定位,)
2.用于小范围的移动 

}

绝对定位:{

介绍:拼爹型定位,相对于非静态定位的父元素进行定位移动
代码:position:absolute;
特点:
1.需要配合方位属性实现移动
2.默认相对于浏览器可视区域进行移动
3.在页面中不占位置一已经脱标
应用场景:
1,配合绝对定位组CP(子绝父相:父级相对定位;子级绝对定位,若是没有父级,那就按照浏览器界面作为参照物)

注意:1.绝对定位查找父级的方式:就近找定位的父级,如果逐层查找不到这样的父级,如果逐层查找不到这样的父级,就以浏览器窗口为参照进行定位。、

           2.绝对定位的盒子显示模式具备行内块特点:加宽度高度生效,如果没有宽度也没有内容,盒子的宽度尺寸就是

}

扩展1:

}

固定定位:{

介绍:死心眼型定位,相对于浏览器进行定位移动
代码:position:fixed;
特点:
1.需要配合方位属性实现移动
2.相对于浏览器可视区域进行移动
3.在页面中不占位置→已经脱标

4.具有行内块的特点
应用场景:
1.让盒子固定在屏幕中的某个位置

}

元素层级关系:{

不同布局方式元素的层级关系:标准流<浮动<定位
不同定位之间的层级关系:相对、绝对、固定默认层级相同,此时HTML中写在下面的元素层级更高,会覆盖上面的元素

默认情况下,定位的盒子后来者居上,
z-index:整数;取值越大,显示顺序越靠上,z-index的默认值是0

注意:z-index必须配合定位才生效

}}

装饰:{

垂直对齐方式:

光标类型:


边框圆角:

注意,这个地方的border-radius是个个方位的,有几个方位就可以设置几个值,若只是设置一个值,那么就表示四个方位的值都是一样的,若是其他方位没有啥子,看相对的方位,按照从左上顺时针转一圈

overflow溢出部分显示效果:


元素本身隐藏:

 场景:让某元素本身在屏幕中不可见。如:鼠标:hover之后元素隐藏
常见属性:
1.visibility:hidden
2.display:none

 

}

(拓展)元素整体透明度
场景:让某元素整体(包括内容)一起变透明
属性名:opacitys
属性值:0-1之间的数字
1:表示完全不透明
0:表示完全透明
注意点:opacity会让元素整体透明,包括里面的内容,如:文字、子元素等..
}

精灵图:

精灵图的使用步骤:

 背景图片大小:

盒子阴影:

 

 过渡:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值