【发布时间】:2018-11-28 16:25:56
【问题描述】:
我在子 DIV 元素中有一个 SVG(屏幕截图中的红色矩形),它位于父 DIV 元素(绿色矩形)内。
.parent {
position: relative;
background: green;
left: 50%;
transform: translateX(-50%);
display: inline-block;
overflow: hidden;
height: 400px;
width: 270px;
}
.child {
display: block;
position: absolute;
top: 50%;
left: 50%;
min-height: 100%;
min-width: 100%;
transform: translate(-50%, -50%);
}
<div class="parent">
<div class="child">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Layer_1" viewPort="550 0 600 430.95" viewBox="246 0 600 430.95" preserveAspectRatio="xMidYMid meet" >
<rect width="100%" height="100%" fill="red" />
</svg>
</div>
</div>
我想让 SVG 缩放到与父 DIV 相同的大小,所以我使用了 min-height 属性,我已将其设置为 100%。出于某种原因,子 DIV 中的 SVG 无法缩放到父 DIV 的大小,并且要小得多。我很困惑为什么会这样,并且会认为它会缩放到相同的大小。有谁知道为什么不?
【问题讨论】: