CSS- 4.1 浮动(Float)

本系列可作为前端学习系列的笔记,代码的运行环境是在HBuilder中,小编会将代码复制下来,大家复制下来就可以练习了,方便大家学习。
HTML系列文章 已经收录在前端专栏,有需要的宝宝们可以点击前端专栏查看!

点赞关注不迷路!您的点赞、关注和收藏是对小编最大的支持和鼓励!

系列文章目录

CSS- 1.1 css选择器

CSS- 2.1 实战之图文混排、表格、表单、学校官网一级导航栏

CSS- 3.1 盒子模型-块级元素、行内元素、行内块级元素和display属性

CSS- 4.1 浮动(Float)

CSS- 4.2 相对定位(position: relative)

CSS- 4.3 绝对定位(position: absolute)&学校官网导航栏实例

CSS- 4.4 固定定位(fixed)& 咖啡售卖官网实例


目录

系列文章目录

前言

一、理论部分

1.基本概念

2.浮动属性值

3.浮动元素的特点

4.常见用途

5.清除浮动

5.浮动布局示例

6.现代布局替代方案

7.注意事项

二、代码实例

总结


前言

小编作为新晋码农一枚,会定期整理一些写的比较好的代码,作为自己的学习笔记,会试着做一下批注和补充,如转载或者参考他人文献会标明出处,非商用,如有侵权会删改!欢迎大家斧正和讨论!

一、理论部分

浮动(Float)是CSS中的一个重要布局属性,最初设计用于让文本环绕图像,但现在广泛用于网页布局。

1.基本概念

浮动属性使元素脱离正常的文档流,向左或向右移动,直到碰到包含框或另一个浮动元素为止。

2.浮动属性值

  • float: left; - 元素向左浮动
  • float: right; - 元素向右浮动
  • float: none; - 默认值,元素不浮动
  • float: inherit; - 继承父元素的浮动属性

3.浮动元素的特点

  1. 脱离文档流:浮动元素不再占据文档流中的空间
  2. 文字环绕:非浮动的块级元素会环绕浮动元素
  3. 高度塌陷:父元素可能无法自动包含浮动子元素的高度

4.常见用途

  1. 多栏布局:创建等宽或不等宽的多栏布局
  2. 文本环绕图片:经典的图文混排效果
  3. 导航菜单:创建水平排列的导航项

5.清除浮动

由于浮动元素脱离文档流,可能导致父元素高度塌陷,常用清除浮动的方法:

1. 使用clear属性

css

html 复制代码
.clearfix {
  clear: both;
}

2. 空div方法

html

html 复制代码
<div style="clear: both;"></div>

3. 伪元素清除法(推荐)

css

html 复制代码
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

4. 触发BFC(块级格式化上下文)

css

html 复制代码
.parent {
  overflow: hidden; /* 或 auto */
}

5.浮动布局示例

html

html 复制代码
<div class="container">
  <div class="box" style="float: left; width: 30%;">左侧内容</div>
  <div class="box" style="float: left; width: 70%;">右侧内容</div>
  <div style="clear: both;"></div> <!-- 清除浮动 -->
</div>

6.现代布局替代方案

虽然浮动仍然有用,但现代CSS布局技术如:

  • Flexbox
  • CSS Grid
  • 定位(position)

通常能提供更强大和直观的布局解决方案。

7.注意事项

  1. 浮动元素需要明确设置宽度(除非是图像等有内在宽度的元素)
  2. 浮动会影响后续元素的布局
  3. 在响应式设计中,浮动布局可能不如Flexbox或Grid灵活

浮动是CSS中一个强大但需要谨慎使用的工具,理解其工作原理对于创建稳定的布局至关重要。

二、代码实例

代码实例如下:

html 复制代码
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>浮动float</title>
		<style type="text/css">
			.father {
				width: 400px;
				height: 900px;
				border: 1px solid black;
			}
			.div1 {
				width: 100px;
				height: 100px;
				background-color: red;
				float: left;
			}
			.div2 {
				width: 200px;
				height: 200px;
				background-color: blue;
				float: left;
			}
			.div3 {
				width: 100px;
				height: 600px;
				background-color: green;
				float: left;
			}
			.c1 {
				clear: both;
				/* 清除浮动 */
				
			}
			ul li {
				float: left;
				width: 120px;
			}
		</style>
	</head>
	<body>
		<div class="father">
			<div class="div1"></div>
			<div class="div2 c1"></div>
			<div class="div3"></div>
		</div>
		<ul>
			<li>列表1</li>
			<li>列表2</li>
			<li>列表3</li>
			<li>列表4</li>
			<li>列表5</li>
		</ul>
			
	</body>
</html>

代码运行:


总结

以上就是今天要讲的内容,本文简单记录了CSS-浮动(Float),仅作为一份简单的笔记使用,大家根据注释理解

相关推荐
IMPYLH2 分钟前
HTML 的 <th> 元素
前端·html
风骏时光牛马3 分钟前
AI浪潮下程序员的职场破局与能力成长思考
前端
IMPYLH9 分钟前
HTML 的 <thead> 元素
前端·html
m4Rk_8 小时前
【论文阅读】Agent 记忆机制(83):Inside Out——用可演化 PersonaTree 构建 Agent 的核心长期记忆
论文阅读·人工智能·学习·开源·github
FungLeo9 小时前
成为全栈·React 管理后台篇·总复盘:从“接口能调通”到“后台值得使用”
前端·react.js·前端框架·项目复盘·成为全栈
Csvn10 小时前
并发模式:让渲染学会排队、插队和让路
前端
可乐鸡翅yeah_10 小时前
新手梳理:M3U8 线上问题,哪些是前端锅,哪些是后端锅
前端·ios·音视频·实时音视频·m3u8·音视频在线播放
Flynt10 小时前
Linear 用 1000 个 PR 换掉 styled-components,我写了 200 个按钮,把这笔账复现了一遍
前端·css·preact
m4Rk_11 小时前
【论文阅读】Agent 记忆机制(81):EMR——用情景记忆避免 Agent 在多步推理中反复绕圈
论文阅读·人工智能·学习·开源·github
JavaGuide11 小时前
NVIDIA 又开源了!这次给 AI Agent 加上权限管控
前端·后端