【发布时间】:2015-12-31 17:54:12
【问题描述】:
我遇到了我认为很奇怪的问题。我有一个 div,在父 div 内,我给子 div 的宽度为 100%,但它没有增长到父 div 的大小。
父 div 确实不具有任何类型的设置宽度。所以我的问题是:百分比宽度仅在父元素具有设定宽度时才有效,还是应该增长?
澄清:
有些人可能想知道如果父 div 本身没有设置宽度,那么它是如何有一个宽度可以增长的。原因是我在父 div 中还有其他子元素的兄弟元素,它们具有设置的宽度,因此父 div 已经增长到满足这些兄弟元素的宽度。
代码示例:
<div id="parent-div">
<div id="child-element" style="width: 100%">Content</div>
<div id="sibling" style="width: 250px"></div>
</div>
子元素没有增长到满足父 div。 100% 的宽度基本上没有做任何我能说的事情。这是在 IE7 中。
谢谢。
跟进:感谢大家的回答。我正忙着测试。我最初认为父 div 只会像他们的孩子一样宽,但事实证明,鉴于上面的示例,我错了,我编写代码只是为了证明我遇到的问题。就我而言,我的父 div 应用了 position: fixed 和 bottom: 1px 和 right: 1px。从我的测试来看,这似乎改变了父 div 的行为。它不再自动拉伸到页面的整个宽度,而是假设我认为无论如何都是这种情况,即父 div 仅扩展至足以容纳其最宽的子元素。这就是我现在看到的行为,但这只是因为我的父 div 有一个固定的位置。
【问题讨论】:
-
请发布您使用的实际 html 和 css。
-
你能发布你的代码,或者至少是它的一个示例吗?如果您能看到自己在做什么,则排除故障会容易得多...
-
一个div总是100%的宽度开始;直到你浮动它,绝对定位它等等。
-
没有完整的 html 和 css,这个问题根本没有任何意义,所有的答案都是猜测。赞成票是怎么回事?