【发布时间】:2015-06-26 06:20:02
【问题描述】:
我有一个定义了宽度和高度的 div。然后我有一个我想适合它的图像(保持比例)。就像JsFiddle :
<div style="width: 200px; height: 300px; background: red;">
<img src="http://placehold.it/200x800" style="width: auto; height: auto; max-width: 100%; max-height: 100%" />
</div>
现在我想要 一个包裹在 img 上的 div(即与 img 的宽度、高度和位置精确调整),因为这样我希望在 div 内有一些元素,position:absolute 相对于 img。检查JsFiddle:
<div style="width: 200px; height: 300px; background: red;">
<div style="display: inline-block; max-width: 100%; max-height: 100%; background: blue;">
<img src="http://placehold.it/200x800" style="width: auto; height: auto; max-width: inherit; max-height: inherit" />
</div>
</div>
结果错误,导致img覆盖在div上。我希望 img 像第一个示例一样调整大小。
在Child with max-height: 100% overflows parent 中,他们指出 div 需要有一个高度和一个宽度,但这样 div 就不会填满整个 img。
真的有办法吗?
我的整个布局更加复杂,并且完全响应顶部的 flex,这里的示例只是针对我遇到的问题的一个近似值。所以任何固定高度和宽度的解决方案都是错误的。
【问题讨论】: