博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浮动的原理、引起的问题及解决方法
阅读量:4450 次
发布时间:2019-06-07

本文共 789 字,大约阅读时间需要 2 分钟。

浮动的工作原理

浮动元素脱离文档流,不占据空间。浮动元素碰到包含它的边框或者浮动元素的边框停留。

浮动元素引起的问题:

1)  父元素的高度无法被撑开,影响与父元素同级的元素

2)  与浮动元素同级的非浮动元素会跟随其后

3)  若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构

清除浮动的几种方法:

1) 额外标签法。使用 CSS 中的 clear:both; 属性来清除元素的浮动可解决2、3问题。

  注意:clear属性只适用于块级元素。

  缺点:不过这个办法会增加额外的标签使HTML结构看起来不够简洁。

1 

2)  使用after伪元素清除浮动。对于问题1,添加如下样式,给父元素添加clearfix样式:

  注意:该方法只适用于非IE浏览器。由于IE6-7不支持:after,使用 zoom:1触发 hasLayout。

1 .clearfix:after { 2     content: "."; 3     display: block; 4     height: 0; 5     clear: both; 6     visibility: hidden; 7 } 8 .clearfix { 9     display: inline-block;10 } /* for IE/Mac */

  关于该方法具体介绍请参考: 

  关于伪元素的基础介绍可参考:

  关于伪元素的深入理解请参考:

3)  浮动外部元素。

4)  设置 overflow 为 hidden 或者 auto清除浮动。

  说明:给包含浮动元素的父标签添加css属性 overflow:auto; zoom:1; zoom:1用于兼容IE6。

转载于:https://www.cnblogs.com/SHERO-Vae/p/5795824.html

你可能感兴趣的文章
关于日历的算法
查看>>
[QT编程]QT实现的一个渐隐渐显窗体
查看>>
在Web工程中引入Jquery插件报错解决方案
查看>>
大学总结之影响我最深的十本书
查看>>
用myEclipse连接数据源生成动态数据报表
查看>>
[myeclipse]@override报错问题
查看>>
자주 쓰이는 정규표현식
查看>>
超简单的listview单选模式SingleMode(自定义listview item)
查看>>
vue-11-路由嵌套-参数传递-路由高亮
查看>>
HDU 1199 - Color the Ball 离散化
查看>>
[SCOI2005]骑士精神
查看>>
Hibernate原理解析-Hibernate中实体的状态
查看>>
六时车主 App 隐私政策
查看>>
C语言常见问题 如何用Visual Studio编写C语言程序测试
查看>>
Web用户的身份验证及WebApi权限验证流程的设计和实现
查看>>
hdu 2098 分拆素数和
查看>>
[ONTAK2010]Peaks kruskal重构树,主席树
查看>>
ECMAScript6-let与const命令详解
查看>>
iOS 使用系统相机、相册显示中文
查看>>
什么是敏捷设计
查看>>