浮动作用:使块级标签完美地在一行排列,网页布局。早期浮动的作用是图文环绕
float:right/left
浮动特点:1.浮动元素会脱离标准流(脱标),在标准流不占位置 相当于从地面飘到了空中
2.浮动元素比标准流高半个级别,可以覆盖标准流中的元素
3.浮动找浮动 下一个浮动元素会在上一个浮动元素后面左右浮动
4.浮动的标签是顶对齐的,设置外边距可以上下进行移动
5.浮动具有行内块的特点,但是比行内块标签高级
清除浮动:影响:如果子元素浮动了,此时子元素不能撑开标准流的父级元素
原因:子元素浮动后脱标--不占位置
目的:需要父元素有高度,从而不影响其他网页元素的布局
方法1:额外标签 A.在父元素最后添加一个块级元素
B.给添加的块级元素设置clear:both
缺点:会在页面中添加额外的标签,会让页面HTML结构变得复杂
方法2:单伪元素替代法 用伪元素代替了额外标签
优点:项目中使用,直接给标签加类即可清除浮动
.clearfix::after{
clear:both;
content: '';
/* 因为伪元素添加的是行内的 */
display: block;
}
方法3:双伪元素替代法
<!-- .clearfix::before,
.clearfix::after{
/* clear:both; */
content: '';
/* 因为伪元素添加的是行内的 */
display: table;
}
.clearfix::after{
clear: both;
} -->
方法4:给父元素设置overflow:hidden
注意点:1.浏览器解析行内块或者行内标签的时候 如果两个标签的代码换行就会产生一个空白间隔。
2.浮动后的标签是没有办法通过margin:auto进行水平居中的
3.CSS书写顺序 浏览器执行效率比较高
A.放浮动或者display
B.放盒子模型相关的属性 margin border padding 宽度高度 背景色
C.文字样式
忘记的知识点:1.文字水平居中 line-height:标签的高度