css中的浮动

在 CSS 中,浮动(float)是一种定位元素的方式,它允许元素脱离正常的文档流,并向左或向右移动,直到其边缘碰到包含块或者另一个浮动元素的边缘。下面从多个方面详细介绍 CSS 浮动:

一,浮动的结果

浮动后的元素会脱离标准流,不会再保留原先的位置,会飘起来。

浮动后的元素不会出现margin塌陷问题。

任何元素都可以浮动,添加浮动后都具有行内块元素的特性。(如span添加浮动后,可以设置宽和高)

二,浮动的影响

浮动的盒子只会影响浮动盒子后面的标准流,不会影响前面的标准流。

为了约束浮动元素的位置,先用标准流的父元素排列上下位置,之后内部子元素采取浮动排列左右位置,符合网页布局第一准则。

三,清除浮动

为什么要清除浮动?由于父盒子在很多情况下,不方便给高度,但是盒子浮动又不占有位置,最后父盒子高度为0时,就会影响下面的标准流盒子。

清除浮动后,父级就会根据子盒子自动检测高度,父级有了高度,就不会影响下面的标准流了。

清除浮动的方法1:在浮动元素末尾添加一个新的标签(块级元素),如<div style="clear:both"><div>

清除浮动的方法2:为父元素添加overflow属性,将其属性值设置为hidden,auto或者scroll。

清除浮动的方法3:为父元素的class添加clearfix,并且在前面添加代码:

复制代码
.clearfix:before,
.clearfix:after {
    content: "";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    *zoom: 1;
}

四,注意事项

一浮全浮。在同一行上的盒子,一个盒子加上浮动后,其他盒子也要浮动。不然浮动会失效。

相关推荐
看晴天了几秒前
手势操控 Three.js!效果炸裂!
前端
喝咖啡的女孩8 分钟前
Promise × 定时器全场景手写
前端
h***346315 分钟前
MS SQL Server 实战 排查多列之间的值是否重复
android·前端·后端
本地跑没问题17 分钟前
Rect深入学习
前端
北辰alk17 分钟前
跨域难题终结者:Vue项目中优雅解决跨域问题的完整指南
前端
吹水一流18 分钟前
为什么 SVG 能在现代前端中胜出?
前端
小皮虾18 分钟前
拒绝卡顿!小程序图片本地“极速”旋转与格式转换,离屏 Canvas 性能调优实战
前端·javascript·微信小程序
小熊哥72218 分钟前
一个有趣的CSS题目
前端
小时前端19 分钟前
性能优化:从“用户想走”到“愿意留下”的1.8秒
前端·面试
进阶的鱼20 分钟前
关于微前端框架wujie的一次企业级应用实践demo?
前端·vue.js·react.js