您现在的位置是:网站首页> 编程资料编程资料
CSS 清除浮动与BFC的方法css overflow: hidden 的用法(溢出隐藏及清除浮动)CSS实现元素浮动和清除浮动的方法Css实现清除浮动的方法汇总什么是BFC? CSS 使用伪元素清除浮动的方法轻松搞懂CSS浮动与清除浮动图文详解css 如何清除浮动的示例代码CSS清楚浮动clear:both的实例代码
2021-09-03
877人已围观
简介 这篇文章主要介绍了CSS 清除浮动、BFC的相关资料,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
BFC
BFC:块级格式化上下文
BFC的布局规则
- 内部的Box会在垂直方向,一个接一个地放置。
- Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠。
- 计算BFC的高度时,浮动元素也参与计算。
- BFC的区域不会与float box重叠。
- 每个盒子(块盒与行盒)的margin box的左边,与包含块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。
- BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此。
如何创建BFC
1、 float 的值不是 none 。
2、 position 的值不是 static 或者 relative 。
3、 display 的值是 inline-block 、 table-cell 、 flex 、 table-caption 或者 inline-flex
4、 overflow 的值不是 visible
BFC的作用
1.利用BFC避免margin重叠。
2.自适应两栏布局
3.清除浮动。
清除浮动
清除浮动主要是为了解决,父元素因为子级元素浮动引起的内部高度为0的问题。
清除浮动的方法
1. 额外标签法
在最后一个浮动标签后,新加一个标签,给其设置clear:both;(不推荐)
优点:通俗易懂,方便
缺点:添加无意义标签,语义化差
LeftRight
2.父级添加overflow属性
通过触发BFC方式,实现清除浮动。(不推荐)
优点:代码简洁
缺点:内容增多的时候容易造成不会自动换行导致内容被隐藏掉,无法显示要溢出的元素
Title LeftRight
3.使用after伪元素清除浮动(推荐使用)
优点:符合闭合浮动思想,结构语义化正确。
缺点:ie6-7不支持伪元素:after,使用zoom:1触发hasLayout。
Title LeftRight
4.使用before和after双伪元素清除浮动
优点:不仅可以清除浮动,也可以解决高度塌陷的问题(给父盒子添加类名clearfix)
缺点:用zoom:1触发hasLayout.
Title LeftRight
总结
到此这篇关于CSS 清除浮动、BFC的文章就介绍到这了,更多相关css 浮动 BFC内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
相关内容
- css 层叠与z-index的示例代码css之Display、Visibility、Opacity、rgba和z-index: -1的区别解决CSS中子元素z-index与父元素兄弟节点的层级问题CSS3关于z-index不生效问题的解决z-index为负值的元素无法点击到的解决方法CSS z-index 层级关系优先级的概念css z-index层重叠顺序使用介绍css中z-index: 0和z-index: auto的区别
- css记录文本图标对齐的几种解决方案CSS拾遗之箭头,目录,图标的实现代码CSS3鼠标滑过图片效果 用Font Awesome库实现悬停图标CSS运用阿里巴巴矢量库快速在对应位置加上好看的图标效果(实例代码)
- CSS之定位布局(position,定位布局技巧)css定位position引发的层级关系问题详解详解css粘性定位position:sticky问题采坑CSS position属性和实例应用演示CSS的position定位和float浮动详解css关于position属性的用法详解(绝对定位和相对定位的混淆)css position fixed 左右双定位的实现代码
- 关于CSS中定位的小结CSS之定位布局(position,定位布局技巧)css3 transform导致子元素固定定位变成绝对定位的方法css定位position引发的层级关系问题详解深入学习CSS中如何使用定位(小结)详解css粘性定位position:sticky问题采坑CSS中的四种定位区别详解
- css3通过scale()、rotate()实现放大、旋转css3的transform中scale缩放详解css3通过scale()、rotate()实现放大、旋转
- 修改CSS样式实现网页灰色(没有颜色只有浅色黑白)的几个方法整理利用CSS将网站网页变灰色代码示例网站变灰色兼容代码 包括图片 支持所有浏览器让网站图片生成灰色效果的三种方法网站变黑白灰色的4种代码详细讲解
- 网站变黑白灰色的4种代码详细讲解利用CSS将网站网页变灰色代码示例网站变灰色兼容代码 包括图片 支持所有浏览器让网站图片生成灰色效果的三种方法修改CSS样式实现网页灰色(没有颜色只有浅色黑白)的几个方法整理
- 网站变灰色兼容代码 包括图片 支持所有浏览器利用CSS将网站网页变灰色代码示例让网站图片生成灰色效果的三种方法网站变黑白灰色的4种代码详细讲解修改CSS样式实现网页灰色(没有颜色只有浅色黑白)的几个方法整理
- CSS前端页面渲染优化属性will-change的具体使用css性能优化-will-change使用详解
- 使用css属性屏蔽鼠标事件的方法(鼠标点击可穿透上层元素)CSS3实现鼠标hover图片光芒四射动画特效用纯CSS实现禁止鼠标点击事件示例代码CSS3和js带炫酷鼠标滑过的多列布局特效源码CSS3鼠标滑过图片标题遮罩动画特效源码 8种CSS实现6种鼠标滑过按钮背景动画特效源码纯CSS3鼠标滑过彩色按钮动画特效源码 9种
