欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

CSS浮动相关解决办法_html/css_WEB-ITnose

程序员文章站 2022-06-04 12:53:24
...
浮动元素引起的问题:

1. 父元素的一级子元素全都为浮动元素的情况下,父元素的高度无法被撑开,影响与父元素同级的元素

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

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

解决方法:

使用 CSS 中的 clear:both; 属性来清除元素的浮动可解决2、3问题,对于问题1,添加如下样式,给父元素添加clearfix样式:

.clearfix:after{content: ".";display: block;height: 0;clear: both;visibility: hidden;}.clearfix{display: inline-block;} /* for IE/Mac */

清除浮动的几种方法:

1. 额外标签法,

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

2. 使用after伪类(只适用于非IE浏览器)

#parent:after{    content:".";    height:0;    visibility:hidden;    display:block;    clear:both;}

3. 浮动外部元素

4. 设置 overflow 为 hidden 或者 auto zoom:1(用于兼容IE6)