html - 相对 div-Container 应具有其中绝对 img 的高度

标签 html css positioning

<div id="mainPic" style="width:50%;">
    <img id="pic1" src="#" width="100%">
    <img id="pic2" src="#" width="100%">
</div>

我在 div#mainPic 中有两个图像,其父级宽度为 50%。图像将使用全宽,不多不少,并自动调整高度。 mainPic 现在应该与图像具有相同的高度。 问题是我必须将图像设置为绝对图像,因为我想要一个在另一个之上。所以两者都有规则:

position : absolute;
top : 0px;
left : 0px;

但是现在 div#mainPic 不是动态地具有来自自动缩放图像的高度。 Javascript 也出局了,因为 JS 只设置一次高度,而不是每次调整窗口大小时。

最佳答案

绝对定位设置元素相对于第一个非静态父元素的位置。您可能还没有设置 #mainPic 的位置,它将其默认值设置为静态。这意味着如果您将子元素 #pic1#pic2 的位置更改为绝对位置,那么它们将被赋予相对于 body 的绝对位置。这可以简单地通过给 #mainPic 一个非静态位置来解决。 fiddle 示例:https://jsfiddle.net/thinker3197/n4kn2wLa/

关于html - 相对 div-Container 应具有其中绝对 img 的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38361576/

相关文章:

php - 使用 php 从管理面板更改 css 值

html - 为什么doe的固定定位div在滚动而不是停留在指定位置?

javascript - 遍历 table > tr > td > div 下的每个跨度

CSS :before Pseudo-element not displaying background-image with IE8

css - 如何创建网格/平铺 View ?

html - CSS定位溢出

html - 让一个 div 响应地占据网页宽度的其余部分

html - 如何从增加高度的相对位置移除额外空间?

html - 当父级嵌入显示 :table? 时,如何使 100% 宽度的 div 的子级水平滚动

html - CSS:内联样式应用于 <fieldset> 但是当我将相同的代码写入外部 css 并通过 id 引用时,没有应用任何样式