CSS之浮动
标准流(文档流)
元素自上而下,自左而右,块元素独占一行,行内元素在一行上显示,碰到父集元素的边框换行。
浮动布局
float:left|right
特点:
- 元素浮动之后不占据原来的位置(脱标)
- 浮动的盒子在一行上显示
- 行内元素浮动之后转换为行内块元素。(不推荐使用,转行内元素最好使用display: inline-block;)
浮动的作用
- 文本绕图
- 制作导航
- 网页布局
清除浮动
当父盒子没有定义高度,嵌套的盒子浮动之后,下边的元素发生位置错误。
清除浮动不是不用浮动,清除浮动产生的不利影响。
清除浮动的方法
clear: left | right | both
工作里用的最多的是clear:both;
额外标签法
在最后一个浮动元素后添加标签
<div>
<div></div>
<div></div>
<div style="clear:both"></div>
</div>
给父集元素使用overflow:hidden; bfc
如果有内容出了盒子,不能使用这个方法。
伪元素清除浮动 推荐使用
.clearfix:after{
content: ".";
display: block;
height: 0;
line-height: 0;
visibility: hidden;
clear:both;
}
overflow
参数 | 说明 |
---|---|
overflow:visible | 默认值,内容不会被修建,会呈现在元素框之外 |
overflow:hidden | 内容会被修建,并且其余内容不可见 |
overflow:scroll | 内容会被修建,但是浏览器会显示滚动条以便显示其余内容 |
overflow:auto | 如果内容被修建,浏览器会显示滚动条以便显示其余内容 |