【发布时间】:2019-01-09 22:31:34
【问题描述】:
我正在尝试创建一个 SVG,它(在高度上)延伸到旁边具有可变高度的段落。
目前我有以下工作示例代码,只要段落大于 150 像素,它就可以工作。一旦段落的高度变小,SVG 就会停止收缩。
<div style="display: flex">
<div>
<svg style="display:block;width: 40px;height:100%">
<line x1="20" y1="0" x2="20" y2="100%" stroke-width="1" stroke="black"></line>
</svg>
</div>
<div style="height: 300px;border:1px solid">
This paragraph is 300px, the svg will stretch accordingly
</div>
</div>
<br><br><br><br>
<div style="display: flex">
<div>
<svg style="width: 40px;height:100%">
<line x1="20" y1="0" x2="20" y2="100%" stroke-width="1" stroke="black"></line>
</svg>
</div>
<div style="height: 50px;border:1px solid">
This paragraph is 50px, the svg will not shrink below 150px
</div>
</div>
这不能用 javascript 解决,它应该是响应式的。 SVG 在实践中要复杂得多,不能用简单的border-left: 1px solid black 代替
【问题讨论】:
-
你尝试添加 viewBox 了吗?
-
是的,我尝试添加
viewbox="0 0 40 100%",但没有帮助 -
100% 是个问题,但我不太清楚
-
我知道这一点。但这是我知道如何使这个 SVG 响应的唯一方法(不使用任何 javascript)
-
百分比在视图框中无效