overflow:hidden 的疑问 10

w3c上解释说是溢出的话隐藏它。但我觉得我下面的这个例子和隐藏就没有关系。代码(我都加了背景,好区分).wrap{overflow:hidden;}<divclass="... w3c上解释说是溢出的话隐藏它。 但我觉得我下面的这个例子和隐藏就没有关系。
代码(我都加了背景, 好区分)
.wrap
{
overflow: hidden;
}

<div class="wrap"> <h1>My Second Website</h1> <div class="content"> </div> <aside>
//... </aside> </div>

当没有overflow: hidden;的时候, 显示的是这样:

加上overflow: hidden;, 显示的是这样

我搞不明白这里什么东西溢出了, 好像没什么溢出吧, 隐藏什么东西?
这个是overflow: hidden

这个没有设置overflow

css:

.wrap{ min-width: 20px; width: 80%; margin: auto; background: green; overflow: auto;}.content, aside{ height: 600px;}.content{ background: red; float: left; width: 70%;}aside{ background: brown; float: right; width: 30%;}aside ul{ list-style: none; padding-left: 0;}
展开
 我来答
从前有个T
2013-05-28 · TA获得超过5345个赞
知道小有建树答主
回答量:685
采纳率:0%
帮助的人:766万
展开全部
overflow:hidden只有在定义了元素的宽高之后才能看到效果的,在没有定义宽高的情况狂下,元素的宽度默认是100%;而高度则是自适应内容,所以自然也就不存在overflow的情况了。如果你给wrap定义一个高度,例如height:10px;之类的,再看看效果,就会发现多出来的部分被隐藏了。
追问
那为什么我图片中的例子
.wrap
{
overflow: hidden;

}
加上overflow: hidden; 就可以显示出更多的部分? 这个和hidden有什么关系?
这样做的原理是什么?
追答
呃。。。这个是浏览器渲染的问题,很难解释的,在不同浏览器里面的表现不一样,有的浏览器会多出一些东西来,有的又不会,就像IE6不认div的hover伪类,但是其他浏览器又认一样的。我想大概在没有设置overflow:hidden的情况下,某些浏览器会认为元素的高度等于里面文本的高度,而不判断元素的实际高度;如果设置了overflow:hidden以后,浏览器会先判断元素的实际高度,即文本高度加容器的padding高度,这样的话原来不存在的一些空间也会被填充了,不过这也只是猜测罢了,一般在定义overflow的时候,都是会加上高度值的,在这种情况下不论什么浏览器都是可以正确解析的。
ZESTRON
2024-09-04 广告
在Dr. O.K. Wack Chemie GmbH,我们高度重视ZESTRON的表界面分析技术。该技术通过深入研究材料表面与界面的性质,为提升产品质量与可靠性提供了有力支持。ZESTRON的表界面分析不仅涵盖了相变化、化学反应、吸附与解吸... 点击进入详情页
本回答由ZESTRON提供
百度网友d9ac3fb66
2013-05-29 · TA获得超过1282个赞
知道小有建树答主
回答量:538
采纳率:0%
帮助的人:592万
展开全部
能看一下所有样式么?
追问
完整界面截图补充上了
追答
  • 是这样的,一个父级里面有一个浮动元素时,由于浮动元素脱离文档流,所以该父级时不会被浮动元素撑开的。而给父级元素设置overflow属性,能清除浮动元素的影响。

  • 你不设置父级的overflow属性时,父级只被<h1>撑开,所以只有<h1>的背景是绿色的。

    你设置了父级的overflow属性后,父级也会被浮动元素撑开。

也就是说不说什么溢出不溢出,只是父级的背景覆盖范围而已。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式