全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-16 6 分钟 ✍️ juanwangdev

CSS浮动

浮动(float)让元素脱离文档流,向左或向右移动,常用于多列布局和文字环绕效果。

基本语法

CSS
.float-left {
  float: left;
}

.float-right {
  float: right;
}

.float-none {
  float: none;
}

基本特性

特性说明
脱离文档流浮动元素不占据原空间
文字环绕行内内容会环绕浮动元素
块级化浮动后元素变为块级框
自动收缩未设宽度时宽度由内容决定

典型应用

文字环绕图片

CSS
.article img {
  float: left;
  margin-right: 15px;
  margin-bottom: 10px;
}

多列布局

CSS
.container {
  width: 100%;
}

.column {
  float: left;
  width: 33.33%;
  padding: 10px;
  box-sizing: border-box;
}

导航栏

CSS
.nav {
  list-style: none;
}

.nav li {
  float: left;
  margin-right: 20px;
}

清除浮动

浮动会导致父容器高度塌陷,需要清除:

方法一:clear 属性

CSS
.clearfix {
  clear: both; /* 清除两侧浮动 */
}
HTML
<div class="container">
  <div class="float-left">浮动元素</div>
  <div style="clear: both;"></div>
</div>

方法二:伪元素(推荐)

CSS
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}
HTML
<div class="container clearfix">
  <div class="float-left">浮动元素</div>
</div>

方法三:overflow

CSS
.container {
  overflow: hidden; /* 或 auto */
}

注意:现代布局推荐使用 Flexbox 或 Grid,浮动主要用于文字环绕场景。

浮动与清除对比

属性值作用
clear: left清除左侧浮动影响
clear: right清除右侧浮动影响
clear: both清除两侧浮动影响

要点总结

  • 浮动使元素脱离文档流,实现文字环绕和多列布局
  • 必须处理父容器高度塌陷问题
  • 推荐使用伪元素 ::after + clear: both 清除浮动
  • 现代布局优先使用 Flexbox 和 Grid

📝 发现内容有误?点击此处直接编辑

← 上一篇 CSS定位
下一篇 → CSS响应式图片
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库