当前位置: 代码网 > it编程>网页制作>Css > HTML clearfix清除浮动讲解

HTML clearfix清除浮动讲解

2024年05月18日 Css 我要评论
一、浮动的概念浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。二、浮动的影响1. 浮动会

一、浮动的概念

浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。

二、浮动的影响

1. 浮动会导致父元素高度坍塌

父元素中有子元素,并且父元素没有设置高度,子元素在父元素中浮动,结果必然是父元素的高度为0,这也就导致了父元素高度塌陷问题。

浮动脱离文档流,这个问题会对整个页面布局带来很大影响,如何解决高度坍塌问题,我们需要清除浮动。

三、浮动的清除

1. clear属性的空标签

在浮动元素后添加一个空标签

<div class="clear"></div>

,并且在css中设置

.clear{clear:both;}

即可清理浮动。

  • 原理:添加一个空标签,利用css提高的clear:both清除浮动,让父元素可以自动获取到高度
  • 优点:简单,代码少,兼容所有浏览器
  • 缺点:增加页面的标签,造成结构的混乱
  • 建议:不推荐使用,此方法已经过时

2. :after伪元素

给浮动元素的容器添加一个clearfix的class,然后给这个class添加一个:after伪元素实现元素之后添加一个看不见的块元素(block element)清理浮动。

.clearfix:after{content:'\20';display:block;height:0;clear:both}
.clearfix{zoom:1}
.clear{clear:both;height:0;line-height:0;font-size:0;visibility:hidden;overflow:hidden}

  • 原理:通过css伪元素在容器的内部元素之后添加一个看不见的空格“/20”或点“.” ,并且设置clear属性清除浮动。
  • 优点:浏览器支持较好
  • 缺点:clearfix这个class需要添加zoom: 1(触发haslayout),才能支持ie6和ie7浏览器
  • 建议:推荐使用,设置公共类,减少css代码

到此这篇关于html clearfix清除浮动讲解的文章就介绍到这了,更多相关html clearfix清除浮动内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

  • CSS自定义滚动条样式案例详解

    CSS自定义滚动条样式案例详解

    css3自定义滚动条样式 -webkit-scrollbar当内容超出容器时,容器会出现滚动条,其自带的滚动条有时无法满足我们审美要求,那么我们可以通过css伪... [阅读全文]
  • 详解CSS故障艺术

    概述本文的主题是 glitch art,故障艺术。什么是故障艺术?我们熟知的抖音的 logo 正是故障艺术其中一种表现形式。它有一种魔幻的感觉,看起来具有闪烁、震动的效果,很吸引人…

    2024年05月18日 网页制作
  • 通过CSS数学函数实现动画特效

    前言大家好,这里是 css 兼 webgl 魔法使——alphardex。之前一直在玩 three.js ,接触了很多数学函数,用它们创造过很多特效。于是我思考:能否在 css 中…

    2024年05月18日 网页制作
  • 详解CSS不受控制的position fixed

    详解CSS不受控制的position fixed

    失效的 position:fixed在许多情况下,position:fixed将会失效。mdn用一句话概括了这种情况:当元素祖先的 transform 属性非 ... [阅读全文]
  • 利用CSS制作3D动画

    css 3d 基础知识本文默认读者掌握一定的 css 3d 知识,能够绘制初步的 3d 动画效果。当然这里会再简单过一下 css 3d 的基础知识。使用 transform-sty…

    2024年05月18日 网页制作
  • 详解CSS伪元素的妙用单标签之美

    :before和::before的区别在介绍具体用法之前,简单介绍下伪类和伪元素。伪类大家听的多了,伪元素可能听到的不是那么频繁,其实 css 对这两个是有区分的。有时你会发现伪类…

    2024年05月18日 网页制作

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com