`
mazheming
  • 浏览: 2333 次
  • 性别: Icon_minigender_1
  • 来自: 大连
最近访客 更多访客>>
社区版块
存档分类
最新评论

CSS清除浮动的4中方法

阅读更多

原文地址:http://www.uncletoo.com/html/html5/543.html

 

清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。
CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。

1、结尾处加空div标签 clear:both

1
2
3
4
.div1{background:#000080;border:1px solid red;}
.left{float:left;width:20%;height:200px;background:#DDD}
.right{float:right;width:30%;height:80px;background:#DDD}
.clear{clear:both}

这种方法,感觉之前大家用的比较多。但是无缘无故多出一个空的div,而且浮动越多就要不断加div,让我感觉很忧伤,所以我不太喜欢用。
2、父级div 也一起浮动

 

1
2
3
.div1{background:#000080;border:1px solid red;width:98%;margin-bottom:10px;float:left;}
.left{float:left;width:20%;height:200px;background:#DDD}
.right{float:right;width:30%;height:80px;background:#DDD}

这个方法我记得我是在学校的时候,看老外的CSS书时看到的,当时觉得很好用,但是现在觉得最好还是别用了,有时真的会很麻烦。
因为父级的元素一浮动,又会产生其他元素的浮动问题,不信你可以试试。
3、父级div定义 height
这个方法其实我还是蛮常用的,主要用在那些可以确定高度的元素上,感觉使用上很方便。但是那些需要自适应高度的就不适合了。

 

1
2
3
.div1{background:#000080;border:1px solid redheight:200px;}
.left{float:left;width:20%;height:200px;background:#DDD}
.right{float:right;width:30%;height:80px;background:#DDD}

4、父级div定义 伪类:after 和 zoom
这个方法也是我平时比较喜欢用的,感觉还挺好用的
可以定义一个通用类选择器,然后反复使用:

 

1
2
.clear{zoom:1}
.clear:after{display:block;clear:both;content:"";}

刚用这个的时候,还不知道content属性是干嘛的,后来查了下是这么解释的:
content配合before和:after伪类一起使用,用于插入内容。
小小举个例子,简单写一下:

a:after{content:"aaa";}
<p><a href="#" target="_blank" target="_blank" target="_blank" target="_blank">AAA</a></p>
最后的显示结果是AAAaaa

 

1
2
3
4
5
.div1{background:#000080;border:1px solid red;}
.left{float:left;width:20%;height:200px;background:#DDD}
.right{float:right;width:30%;height:80px;background:#DDD}
.clear{zoom:1}
.clear:after{display:block;clear:both;content:"";}

 

更多前端技术,请登录http://www.uncletoo.com

 

分享到:
评论

相关推荐

    css中3种清除浮动方法

    总结来说,CSS中的清除浮动有多种方法,包括传统的`clearfix`方法、使用`:clearfix`伪类和采用Flexbox布局。选择哪种方法取决于项目的需求,如兼容性、代码简洁性和布局复杂性等因素。理解这些方法的原理和应用场景...

    xhtml+css清除浮动的3种方法

    ### XHTML + CSS清除浮动的三种方法 在XHTML与CSS页面重构过程中,处理浮动元素是一项关键技术。当元素被设定为浮动后,它们会脱离正常的文档流,并向左或向右移动,直到碰到容器边缘或其他浮动元素。这为布局带来...

    css清除浮动的方法有哪些?.docx

    CSS清除浮动是为了应对浮动元素对周围元素布局的影响,特别是防止父元素因子元素浮动而高度塌陷的问题。在Web开发中,有多种方法可以清除浮动,以下将详细介绍四种常见的清除浮动的方法。 一、使用带有`clear`属性...

    CSS清除浮动_2种方法源代码.zip

    本文将详细讲解两种常见的CSS清除浮动的方法,并通过提供的源代码进行实例解析。 ### 方法一:clearfix类 `clearfix` 类是最常用的清除浮动方法之一,它并不需要添加额外的HTML元素,而是利用CSS伪类来解决。这种...

    div+css清除浮动

    div+css清除浮动

    CSS技术:清除浮动的最优方法.pdf

    4. **使用伪元素清除浮动** - 另一种技术是在父元素中使用`:after`伪元素,并利用CSS的 `content` 属性来生成一个内容为空的元素,并设置其 `clear` 属性。然后,将这个伪元素的 `display` 属性设置为 `block` 或 `...

    css 清除浮动的新方法

    在上述文件中介绍了一种新的CSS清除浮动方法,这种方法通过伪元素(:after)来清除浮动,避免了额外的HTML标签。具体实现是在浮动元素的父元素上添加一个clearfix类,然后利用CSS的伪元素来清除浮动,伪元素在文档中...

    CSS清除浮动_清除float浮动 - DIVCSS5.htm

    具体详细的阐述了css浮动如何解决和浮动产生的原因。

    css清除浮动

    ### CSS清除浮动详解 #### 一、引言 在网页设计与前端开发中,CSS(层叠样式表)是用于定义HTML文档外观的关键技术之一。其中,“清除浮动”是一项非常重要的概念,它解决了布局中常见的一个问题——即由于元素...

    HTML5 清除浮动

    2. 使用伪元素`:after`:这种方法利用CSS的伪元素`:after`,在每个浮动元素的父元素末尾添加一个看不见的内容,来清除浮动。例如: ```css .parent::after { content: ""; display: table; clear: both; } ``...

    CSS:清除浮动的最优方法

    本文将重点探讨一种高效且兼容性良好的清除浮动的方法,即利用CSS中的`overflow`属性。 传统的清除浮动方法包括使用`clear:both`、`clearfix`类或者在父元素内添加空元素等。然而,这些方法在某些情况下可能会带来...

    CSS-清除浮动

    从别人博客看来的,整理成了PPT,分享下吧,感觉挺好懂的

    CSS 清除浮动元素方法 整理

    在现代浏览器中,可以考虑使用Flexbox或Grid布局,它们提供了更为强大和灵活的布局机制,不再需要传统的浮动和清除浮动的方法。然而,在向后兼容性和老式浏览器的支持方面,浮动和清除浮动仍然是一个重要的CSS概念。

    css如何清除浮动常用的方法有哪些

    在CSS布局中,浮动元素(float)经常被用于创建多列布局、图像对齐等,但浮动元素会导致其父元素的塌陷,即父元素无法完全包含浮动子元素,这通常需要我们采取措施来清除浮动。以下是三种常用的清除浮动方法: 1. *...

    css清除浮动的几种方法和示例

    以下介绍几种常见的CSS清除浮动的方法: 1. 使用`clear`属性: 这是最基础的清除浮动方式。通过设置`clear`属性,我们可以指定元素不允许与浮动元素相邻。例如,将`.clr{clear:both;}`应用到元素上,使得这个元素...

    CSS3 清除浮动的方法示例

    虽然有多种清除浮动的方法,但在CSS3中,推荐使用Flexbox或Grid布局来替换传统的浮动布局,因为它们提供了更强大的布局控制和更好的兼容性。但如果需要向后兼容旧版浏览器,或者对特定场景优化,理解并掌握浮动和...

    css清除浮动的几种方法以及对应规范说明

    CSS清除浮动是为了处理浮动元素对周围元素布局的影响,特别是防止父元素因浮动元素而高度塌陷。以下是对清除浮动的几种方法及其规范说明的详细解释: 1. **使用`clear:both`** 当一个元素设置`clear:both`时,这个...

    CSS 清除浮动方法大全

    以下是对几种常见的CSS清除浮动方法的详细解释: 1. **伪类`:after`**: 使用CSS的`:after`伪类可以添加一个看不见的元素来清除浮动。通过设置`content: ""`和`clear: both`,这个看不见的元素将强制父元素扩展以...

Global site tag (gtag.js) - Google Analytics