栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么会发生溢出:隐藏的对象具有增加高度以包含浮动元素的意外副作用?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么会发生溢出:隐藏的对象具有增加高度以包含浮动元素的意外副作用?

简而言之,这是因为具有的框

overflow
(不是)
visible
(默认)会创建新的[块格式设置上下文。

如果框本身没有指定的高度,则将创建新块格式上下文的框定义为按高度拉伸以包含其浮点数,默认为

auto
(规范将这些框称为框 格式上下文根 ):

10.6.7块格式上下文根的“自动”高度

在某些情况下(例如,参见上面的10.6.4和10.6.6节),建立块格式化上下文的元素的高度计算如下:

[…]

此外,如果元素具有任何浮动后代,其后边缘的边缘低于元素的底部内容边缘,则高度会增加以包括这些边缘。仅考虑参与此块格式设置上下文的浮点数,例如,绝对定位后代内的浮点数或其他浮点数均不考虑在内。

最初的CSS2规范不是这种情况,而是作为对CSS2.1的更改而引入的,以响应一个不同的(且更为紧迫的)问题。提供了有关更改的说明。因此,虽然更改是非常有意的,但似乎很容易将其称为副作用。

另请注意,这与清除浮点数( 间隙 )不同。花车的间隙 只有 当您使用会发生

clear
财产和有前面的彩车将被清除:

  • 如果您

    clear: both
    的示例中有一个元素是外部元素的同级元素,则浮点数将被清除,但外部元素将不会拉伸。

  • 如果您具有与外部元素的最后一个子元素相似的元素(或伪元素)(使其成为 float 的后续同级元素),则外部元素将向下拉伸以包含该元素的底部边缘,并且高度为零的元素,实际上意味着浮标的最底边缘。这种技术称为“ clearfix”,因为该元素(或伪元素)没有其他目的,只能通过使其内部的间隙迫使外部元素包含浮标。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/411468.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号