比如说,一个父 div 有两个子 div,一个包含文本,另一个包含已知(但可变)宽度和高度的图像。
我想
- 第一个子(包含图像)div的宽度要缩小以适应图像的宽度(我可以这样做)
- 父 div(未指定宽度)缩小以适合包含图像的 div 的宽度(这也可以)
- 包含文本的第二个子 div(也具有未指定的宽度)以匹配父 div 的宽度,而与它包含的文本数量无关(这是它变得棘手的地方)。
我有一个工作版本,可以做我想要的,直到第二个孩子中的文本数量推动父 div 的宽度比图像的宽度更宽。
这是我的代码:
CSS:
#container{border:1px solid #f00;display:inline-block;}
#child1{border:1px solid #0f0;}
#child2{border:1px solid #00f;}
img {border:1px solid #000;}
html:
<div id="container">
<div id="child1"><img src="//www.google.com/logos/2012/Teachers_Day_Alt-2012-hp.jpg" width="300" height="116"></div>
<div id="child2">Lorem ipsum dolor sit amet.</div>
</div>
这是一个jsfiddle:http: //jsfiddle.net/BmbAS/1/
您可以通过单击“延长/缩短文本”链接来增加文本数量来查看问题所在
tldr - 我希望所有 div 的宽度相同,等于图像的宽度
附言。只需要现代浏览器解决方案