层叠,标准文档与浮动,伪标签
css层叠样式表具有俩个性质:
1.继承性
2.层叠性 选择器的一种选择能力,谁的权重大就选择谁
层叠样式表的层叠性分为俩种:
1.选中
选中时分为俩点由权重来决定,谁的权重大就选择谁。
当权重相同时谁在后选谁
2.没选中
没选中时走继承性 ,采用就近原则 继承是所用的继承权重都为0
当有多个父级都设置了样式时选择最近的一项
纯标签与类不具备可比性 纯标签与id不具备可比性
标准文档流
浏览器的排版是根据元素的特征(块和行),从上往下,从左往右来进行排版,这就是标准的文档流
浮动为float:又分为左浮动float:left;与有浮动float:right;
效果:元素都加浮动后面的元素会紧跟着前面的元素并排排列。
只要加上浮动那么浮动的元素就会脱离标准文档流
当第一个元素加上浮动脱离标准文档流,对于浏览器来说,第二个元素就会变成标准文档流中第一个元素,于是把他排在第一位,但第一个依旧存在所以就产生了叠加。
行级元素加上float,就脱离了标准文档流,块不像块,行不像行,能设置宽高能并排排列。
display元素就没有任何意义了
浮动的元素会紧紧的贴靠在一起
浮动的元素会文字环绕
使元素脱离标准流的方法
1.浮动(float)
2.定位(position:absolute)
3固定定位:position:fixed,……固定的
浮动带来的坏处
1.给元素加了浮动,之后撑不起父级的高度。
清除浮动
1.给浮动的父元素添加高度
2给父级添加overflow:hidden
3.给浮动元素的后面添加一个空的div,添加样式为clear:both
4.给浮动多元素的父级添加一个类叫clearfix
伪类选择器
只要选择器后面带冒号都可以说他是伪类选择器
a:link{原本}……a:hover{浮动}……a:visited{访问过后}……a:active{点击}
p:after……p:before
又称伪元素
伪元素包括:after和before
after意思在标签后面追加一个伪元素
before意思在标签前面加一个伪元素
伪元素与伪类选择器的区别:
伪元素有俩个冒号
伪类选择器只有一个冒号
备注
margin:0 auto;和text-align:center;区别
margin居中是对自身 text-align是对元素内部的文本居中的
visibility:hidden;和display:none;区别
visibility隐藏之后还占据空间 display隐藏后不占据位置