这是div结构:
<div id="wrapper">
<div class="mainG mainGT">
<div class="rawV">
<div class="svs"></div>
<div class="drgM"></div>
</div>
</div>
</div>
我正在将外部图片加载到drgM
。现在我需要div svs
与drgM
(高度和宽度)相同的大小。所以我将drgM
和svs
包含在rawV中。我的问题是,如何让svs
始终与drgM
的尺寸相同?所以基本上如果mainGT
高度发生变化,drgM
和svs
应按比例缩放以保持其宽高比?
这是Fiddle,包括css
答案 0 :(得分:1)
我稍微修改了你的代码并为.svs和.drgM添加了另一个包装器,因为我不确定你希望.rawV如何工作。
<div class="rawV">
<div class="resize">
<div class="svs"></div>
<div class ="drgM"></div>
</div>
</div>
https://jsfiddle.net/5ppbgxvq/2/
基本上,.resize
会调整大小,具体取决于.drgM
,而.svs
将填充.rawV
的大小,使其大小与.drgM
相同
答案 1 :(得分:1)
这可能接近您的需要。如果您更改.mainG
的宽度,则图片和叠加层(.svs
)会相应缩放。
可以通过改变高度来扩展,让我知道这是否至关重要。
.wrapper {
border: 1px dotted green;
}
.mainG {
border: 1px solid yellow;
width: 400px;
}
.rawV {
border: 1px dotted blue;
position: relative;
display: inline-block;
vertical-align: top;
width: 100%;
}
.drgM img {
display: block;
width: 100%;
}
.svs {
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
border: 1px dashed red;
}
&#13;
<div class="wrapper">
<div class="mainG mainGT">
<div class="rawV">
<div class="svs"></div>
<div class="drgM"><img src="http://placehold.it/200x150"></div>
</div>
</div>
</div>
&#13;
答案 2 :(得分:0)
将height
和drgM
的css svs
设为auto
。
将height
设置为百分比表示它相对于其父元素。