强制子级浮动父​​级宽度

时间:2013-04-29 02:15:33

标签: html css

关于强制嵌套div子句填充其父容器的宽度有很多问题,但我的问题是如何强制子div的自然流宽度大于其父容器(例如,子div包含一个文本节点,最终将子节点拉伸超出父容器的宽度)以保持其父节点宽度?

一个简单的非动态解决方案是在父级上设置宽度,但是如果宽度没有预先确定(出于响应原因)怎么办?是否有一些标记我可以添加到子元素,以确保它们包装其内容并强制元素保持在父元素的宽度内?“

<div class="parent"> //Width is not set
    <div class="child">Here might be a long string of dynamic text</div>
</div>

据我所知,通过在父元素上设置宽度可以解决这个问题,但在我的情况下,我不能这样做,因为元素设置为根据屏幕大小调整其宽度。因此,例如,如果用户在电话上并且从纵向转为横向,则父元素必须能够调整大小,并且我更喜欢不必使用javascript。

我还应该提一下,在我的特殊情况下,父元素是一个浮点数。我不确定这是否重要。

4 个答案:

答案 0 :(得分:1)

为什么不使用max-width CSS属性? Div,特别是这里的孩子,是一个块级元素,应该将自己限制在父div的宽度上。如果下面的代码没有帮助,我们将需要您扩展您正在处理的内容。

.child {
max-width: 100%
}

在你的样式表中尝试一下,看看css魔术!干杯

答案 1 :(得分:1)

Per Sheikh Heera对此问题的评论,实现这一目标的唯一方法是在父元素上实际设置宽度。在我的情况下,最强大的解决方案是使用媒体查询相应地设置每个屏幕大小的宽度。它不是我想要的解决方案,但它是最好的选择。

答案 2 :(得分:0)

您可以使用溢出样式包含父级中的子级大小:

.parent {
    overflow: hidden;
}

.child {
    width: 100%;
}

答案 3 :(得分:0)

这就是你想要实现的目标。

css

.parent {float:left; width:100%}
.child {display:block}

工作demo

希望这有帮助..