CSS元素浮动

概述

浮动简介

在最初,浮动是用来实现文字环绕图片效果的,现在浮动是主流的页面布局方式之一。

元素浮动后的特点

  1. 脱离文档流。
  2. 不管浮动前是什么元素,浮动后,默认宽与高都是被内容撑开的(尽可能小),而且可以设置宽高。
  3. 不会独占一行,可以与其他元素共用一行。
  4. 不会margin合并,也不会margin塌陷,能够完美的设置四个方向的margin和padding。
  5. 不会像行内块一样被当做文本处理(没有行内块的空白问题)。

浮动后会有哪些影响

  • 对兄弟元素的影响:后面的兄弟元素,会占据浮动元素之前的位置,在浮动元素的下面(文字被甩出,呈现文字环绕效果);对前面的兄弟元素无影响。
  • 对父元素的影响:不能撑起父元素的高度,导致父元素高度塌陷;但父元素的宽度依然束缚浮动的元素。

解决浮动产生的影响(清除浮动)

解决方案:

  1. 方案1:给父元素指定高度。
  2. 方案2:给父元素也设置浮动,带来其他影响。
  3. 方案3:给父元素设置overflow:hidden。
  4. 方案4:在所有浮动元素的最后面,添加一个块级元素,并给该元素设置clear:both。
  5. 方案5:给浮动的元素,设置伪元素,通过伪元素清除浮动,原理与方案四相同。===》推荐使用
css 复制代码
.parent::after {
	content:"";
	display:block;
	clear:both;
}

布局中的一个原则:设置浮动的时候,兄弟元素要么全都浮动,要么全都不浮动。

相关推荐
陈随易1 天前
在 VSCode 里,把项目一键部署到服务器
前端·后端·程序员
Highcharts.js1 天前
教程:基于 React + Highcharts 构建一个单页应用程序、按需数据拉取与图表渲染
开发语言·前端·数据结构·react.js·前端框架·highcharts·页面应用
To_OC1 天前
我被 useState 坑了两次之后,终于把它的脾气摸透了
前端·javascript·react.js
鱼樱前端1 天前
我用 Claude Code 后,编码效率翻 3 倍。但更值钱的是别的。
前端·后端·ai编程
_lucas1 天前
给知识库网站接入AI问答
前端·ai编程·全栈
前端糕手1 天前
前端面试题大全:JavaScript + Vue3 + React + TypeScript + 工程化 + 性能优化
前端
我不叫武1 天前
一个用 Rust 写的离线编码查询桌面工具
前端
Web4Browser1 天前
指纹浏览器 API 自动化怎么接:启动 Profile、获取 CDP 端点并连接自动化框架
前端·网络·typescript·自动化
Patrick_Wilson1 天前
从 React 到 Flutter:写给前端的一张跨端知识地图
前端·flutter·react.js
颜酱1 天前
06 | 把 meta_config 同步进 MySQL(生成阶段)
前端·人工智能·后端