本教程操作环境:windows10系统、CSS3&&HTML5版本、Dell G3电脑。

css3清除浮动的几种方式是什么

浮动(float)可以控制浮动框左右移动,直到遇到另一个浮动框或者遇到它外边缘的包含框。浮动框不属于文档流中的普通流,当元素浮动之后,不会影响块级元素的布局,只会影响内联元素布局。

此时文档流中的普通流就会表现得该浮动框不存在一样的布局模式。当包含框的高度小于浮动框的时候,此时就会出现“高度塌陷”:

11.png

上图中父元素撑开的高度是padding带来的效果,父元素没有设置高度。

在父元素没有设置高度的情况下:

如果父元素里的子元素没有设置浮动,那么父元素的高也会自动被撑开的,出现高度值;

如果父元素里的子元素设置了浮动,那么父元素的高就不会自动被撑开的,也就没有高度值。

显然这样设置浮动后出现了一些问题,比如:

父元素的margin受到影响,无法实现上下左右居中,

若没有给父元素设置高度,浮动后父元素的高度没有被撑开,那么父元素就不会在显示屏上显示。

css如何清除浮动?清除浮动的几种方式是什么?

(1)使用clear:both清除浮动

在代码中在放一个空的div标签,然后给这个标签设置clear:both来清除浮动对页面的影响。它的优点是简单,方便兼容性好,但是一般情况下不建议使用该方法,因为会造成结构混乱,不利于后期维护

<div style="clear: both"></div>
登录后复制

(2)利用伪元素:after来清除浮动

给父级元素添加了一个:after伪元素,通过清除伪元素的浮动,达到撑起父元素高度的目的

.clearfix:after{
    content:"";
    display:block;
    visibility:hidden;
    clear:both;
    }
登录后复制

(3)使用CSS的overflow属性

当给父元素设置了overflow样式,不管是overflow:hidden或overflow:auto都可以清除浮动只要它的值不为visible就可以了,它的本质就是建构了一个BFC,这样使得达到撑起父元素高度的效果

.box{border:1px solid #ccc;background:#eff2f4;overflow: auto}
登录后复制

(学习视频分享:css视频教程)

以上就是css3清除浮动的几种方式是什么的详细内容,更多请关注悠悠之家其它相关文章!

点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部