Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 仅使用CSS,我可以将子项限制为父项宽度,而无需事先固定父项';宽度是多少?_Html_Css_Width - Fatal编程技术网

Html 仅使用CSS,我可以将子项限制为父项宽度,而无需事先固定父项';宽度是多少?

Html 仅使用CSS,我可以将子项限制为父项宽度,而无需事先固定父项';宽度是多少?,html,css,width,Html,Css,Width,这是我的第一个问题,所以我会尽可能连贯地表达我的观点 让我们假设如下: <div id="parent"> <div id="child1">shot text</div> <div id="child2">very long text</div> </div 快照文本 很长的文本 这有点像黑客,但可能有用 <div id="parent"> <div id="child1">shor

这是我的第一个问题,所以我会尽可能连贯地表达我的观点

让我们假设如下:

<div id="parent">
    <div id="child1">shot text</div>
    <div id="child2">very long text</div>
</div

快照文本
很长的文本

这有点像黑客,但可能有用

<div id="parent">
<div id="child1">short text that will expand and expand
<div id="child2">very long text that will remain within the confines of child1
</div>
</div>
</div>

看看这个,它和你的有点接近,但我必须修改列表,以便嵌套
child2
。我不知道您是否有一个特定的样式需要设置为parent div,但如果您这样做,则需要更多的考虑。

因此,根据您的建议即兴创作,这里的关键是设置

#parent{
    background: brown;
    position: absolute;
    left: 0;
    height: 0;
    margin: 0;
    padding: 0;
}

这是一个正在工作的

你能创建一个小提琴作为例子来工作吗?child1能有一个固定的宽度吗?@Mattweitley,第一次也使用小提琴,所以这里什么都没有:基本上我需要绿色的盒子和橙色的盒子一样宽,而不给橙色的盒子任何宽度。使用浏览器正确渲染所需的宽度。@愤怒,不。无法设置任何宽度,否则我必须手动为每个页面/翻译设置宽度。仅使用CSS无法做到这一点。您希望父块采用两个子元素中较小者的宽度。CSS布局引擎将尝试最大化父级的宽度,以便在可用行宽度内显示尽可能多的文本。您需要一些jQuery/JavaScript或者修复父容器的宽度。或者,如果你想固定父元素的高度,你可能可以使用绝对定位的子元素,但是你可能会看到滚动条。嗯,这看起来与我需要的完全不同:|看看我原来的帖子,我试着制作了一个小提琴并对其进行了更新。我在上面发布了另一个示例。谢谢,职位提示帮助我找到了我需要的东西。因为你是第一个,所以选择了你的答案。谢谢,我能用这个职位提示收集到一些东西。糟糕的是,当你们说同样的话时,我不能表示两个答案都有帮助……没问题;)尽管如此,我还是很乐意帮忙。
EDIT
#parent{
    background: brown;
    position: absolute;
    left: 0;
    height: 0;
    margin: 0;
    padding: 0;
}