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;
}

四,注意事项

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

相关推荐
随风一样自由7 小时前
【前端独角兽】刚进入前端领域的前端开发用jQuery还是Vue3?
前端·javascript·vue3·jquery
IMPYLH8 小时前
HTML 的 <data> 元素
前端·html
YHHLAI8 小时前
[特殊字符] 面试中的 Promise —— 从入门到精通
前端·javascript·面试
kyriewen10 小时前
我扒了 GPT-5.6 的全部编程跑分——有一项 OpenAI 没敢放出来
前端·gpt·ai编程
前端H11 小时前
微前端 v3 架构升级:从加载隔离到状态协同
前端·架构·状态模式
陆枫Larry12 小时前
小程序包体积优化:用 SVG 图片替换 iconfont,并保留 CSS 控色能力
前端
环境栈笔记13 小时前
多账号浏览器选型检查清单:Profile、权限、Session 和任务日志怎么评估
前端·人工智能·后端·自动化
前端炒粉13 小时前
手写promise
java·前端·javascript
LaughingZhu13 小时前
智能体经典范式构建:ReAct、Plan-and-Solve 与 Reflection
前端·react.js·前端框架
jsonbro14 小时前
手把手带你实现发布订阅模式
前端·vue.js·设计模式