CSS 浮动

一、元素浮动后的特点

1、脱离文档流

2、不管浮动前是什么元素,浮动后:默认宽和高都是被内容撑开,而且可以设置宽高

3、不会独占一行,可以与其它元素共用一行

4、不会margin合并,也不会margin塌陷,能够完美地设置四个方向的margin和padding

5、不会像行内块一样被当做文本处理(没有行内块的空白问题)。

二、浮动后会有哪些影响

对兄弟元素的影响:后面的兄弟元素,会占据浮动元素之前的位置,在浮动元素的下面;对前面的兄弟无影响

对父元素的影响:不能撑起父元素的高度,导致父元素高度塌陷;但父元素的宽度依然束缚浮动的元素。

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

1、方案一:给父元素指定高度

2、方案二:给父元素也设置浮动,带来其它影响。

3、方案三:给父元素设置overflow:hidden

4、方案四:在所有浮动元素的最后面,添加一个块级元素,并给该块级元素设置clear:both

5、方案五:给浮动元素的父元素,设置伪元素,通过伪元素清楚浮动,原理与方案4相同(推荐使用)

css 复制代码
.parent::after {
    contnet: "";
    display: block;
    clear: both;
}

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

相关推荐
吴长建先生重名了9 小时前
用 MinIO 分布式存储模块一次讲清代码重构与整洁代码实
css
cindershade10 小时前
把响应式做成可验证的状态切换:Container Queries 的组件级重构方法
css·flexbox·前端工程化
平头哥~12 小时前
Day 15 | 不改一行 HTML,给页面加上引号、角标和标签
前端·javascript·css·html·css3·学习资料
平头哥~21 小时前
Day 07 _ 那条 1px 的线,为什么在手机上忽粗忽细
前端·css·样式·学习资料
小江的记录本1 天前
【CSS】CSS 动画:transition、animation、transform、CSS3 新特性(附《思维导图》)
前端·css·安全·spring·前端框架·css3·动画
梨想橙汁1 天前
CSS Grid 网格布局:二维布局神器,轻松实现复杂网页排版
前端·css
晴天161 天前
CSS 预处理器深度解析-Day35
前端·css
小江的记录本2 天前
【CSS】CSS 核心:盒模型、BFC/IFC、Flex/Grid 布局、响应式布局、移动端适配(附《思维导图》)
前端·css·面试·前端框架·tensorflow·html5·xss
小江的记录本2 天前
【HTML】HTML5 新特性、语义化标签、浏览器渲染流程(附《思维导图》)
前端·css·面试·前端框架·html·css3·html5
ℋᙚᵐⁱᒻᵉ鲸落2 天前
移动端滑动手势冲突:overflow: auto导致外层横向滑动失效
前端·javascript·css·vue.js·html