http://www.cnblogs.com/mizzle/archive/2011/07/14/2105961.html
css清除浮动各种方法:
1,在浮动元素后面增加<br/>标签;
<br/>标签有自带的清除浮动属性;
2,在浮动元素后面增加一个清除浮动层;
<div>
<div style="float:left"></div>
<div style="float:left"></div>
<div style="clear:both"></div>
</div>
3,给浮动元素添加overflow:auto样式;
4,为最后浮动元素设置如下样式:
/* 清理浮动 */
.clearfix:after {
visibility:hidden;
display:block;
font-size:0;
content:" ";
clear:both;
height:0;
}
.clearfix {
zoom:1;
}
父类中引用clearfix
其原理是,在「高级」浏览器中使用 :after 伪类在浮动块后面加上一个非 display:none 的不可见块状内容来,并给它设置 clear:both 来清理浮动。在 ie6 和 7 中给浮动块添加 haslayout 来让浮动块撑高并正常影响文档流。
5,另一种简洁的办法:
.cf:before, .cf:after {
content:"";
display:table;
}
.cf:after {
clear:both;
}
.cf {
zoom:1;
}
原理还是一样的。使用 :after 伪类来提供浮动块后的 clear:both。不同的是,隐藏这个空白使用的是 display: table。而不是设置 visibility:hidden;height:0;font-size:0; 这样的 hack。
值得注意的是这里中的 :before 伪类。其实他是来用处理 top-margin 边折叠的,跟清理浮动没有多大的关系。但因为浮动会创建 block formatting context,这样浮动元素上的另而一元素上如果刚好有 margin-bottom 而这个浮动元素刚好有margin-top 的话,应该让他们不折叠(虽然这种情况并不常见)。
分享到:
相关推荐
CSS清除浮动是为了应对浮动元素对周围元素布局的影响,特别是防止父元素因子元素浮动而高度塌陷的问题。在Web开发中,有多种方法可以清除浮动,以下将详细介绍四种常见的清除浮动的方法。 一、使用带有`clear`属性...
### XHTML + CSS清除浮动的三种方法 在XHTML与CSS页面重构过程中,处理浮动元素是一项关键技术。当元素被设定为浮动后,它们会脱离正常的文档流,并向左或向右移动,直到碰到容器边缘或其他浮动元素。这为布局带来...
为了解决这个问题,CSS提供了多种清除浮动的方法。本文将详细讲解三种清除浮动的方法。 1. **传统方式:添加额外的 clearing div** 在浮动元素之后,可以添加一个额外的`<div>`并为其设置样式`clear: both;`。这...
本文将详细讲解两种常见的CSS清除浮动的方法,并通过提供的源代码进行实例解析。 ### 方法一:clearfix类 `clearfix` 类是最常用的清除浮动方法之一,它并不需要添加额外的HTML元素,而是利用CSS伪类来解决。这种...
div+css清除浮动
在现代浏览器中,可以考虑使用Flexbox或Grid布局,它们提供了更为强大和灵活的布局机制,不再需要传统的浮动和清除浮动的方法。然而,在向后兼容性和老式浏览器的支持方面,浮动和清除浮动仍然是一个重要的CSS概念。
具体详细的阐述了css浮动如何解决和浮动产生的原因。
总结来说,清除浮动是CSS布局中非常关键的一个环节,选择合适的方法取决于具体的布局需求和目标浏览器环境。理解各种清除浮动技术的原理和适用场景,可以帮助我们更好地实现复杂的网页设计。随着Web标准的发展,最佳...
在上述文件中介绍了一种新的CSS清除浮动方法,这种方法通过伪元素(:after)来清除浮动,避免了额外的HTML标签。具体实现是在浮动元素的父元素上添加一个clearfix类,然后利用CSS的伪元素来清除浮动,伪元素在文档中...
2. 使用伪元素`:after`:这种方法利用CSS的伪元素`:after`,在每个浮动元素的父元素末尾添加一个看不见的内容,来清除浮动。例如: ```css .parent::after { content: ""; display: table; clear: both; } ``...
### CSS清除浮动详解 #### 一、引言 在网页设计与前端开发中,CSS(层叠样式表)是用于定义HTML文档外观的关键技术之一。其中,“清除浮动”是一项非常重要的概念,它解决了布局中常见的一个问题——即由于元素...
从别人博客看来的,整理成了PPT,分享下吧,感觉挺好懂的
CSS清除浮动是指通过CSS代码的编写,解决在布局中由于元素浮动导致的后续元素无法正常包裹浮动元素的问题,从而使得布局的其他部分能够正确地环绕或包裹浮动元素。在早期的CSS布局中,浮动布局是经常使用的一种方式...
本文将深入探讨浮动的原理,以及清除浮动的各种方法。 1. **浮动的原本意义** 浮动最初设计的目的是为了实现文字环绕图像的效果。当一个元素(如图片)被设置为`float: left`或`float: right`时,它会从正常的文档...
【标题】:深入理解CSS清除浮动的三种常见方法 【描述】:在Web开发中,CSS浮动布局常常用于创建复杂的页面结构,但随之而来的是可能导致的父元素高度塌陷问题。为了解决这一问题,开发者通常会采取清除浮动的策略...
以下是对几种常见的CSS清除浮动方法的详细解释: 1. **伪类`:after`**: 使用CSS的`:after`伪类可以添加一个看不见的元素来清除浮动。通过设置`content: ""`和`clear: both`,这个看不见的元素将强制父元素扩展以...
本文将汇总一些常见的CSS清除浮动的方法。 1. **传统clear属性** CSS的`clear`属性用于指定元素是否可以放在浮动元素的旁边。如果设置为`clear:left`,则元素不会出现在左侧有浮动元素的地方;`clear:right`不让...
为了解决这个问题,开发者们通常会使用各种方法来“清除浮动”,以确保父元素能正确包裹内容。本文将重点探讨一种高效且兼容性良好的清除浮动的方法,即利用CSS中的`overflow`属性。 传统的清除浮动方法包括使用`...