【发布时间】:2020-01-14 18:27:41
【问题描述】:
在将svgs 与 flexbox 或网格混合时发生。
请看这个简化的例子:
div {
display: flex;
width: 100%;
}
span {
flex: initial;
}
svg {
width: 0;
height: 100%;
border: 3px solid black;
flex: auto;
}
<div>
<span>Ala ma kota. A kot ma Alę</span>
<svg>
<rect height="100%" width="100%" fill="red"></rect>
</svg>
</div>
问题的发生非常不一致(似乎取决于周围的盒子大小,而这又取决于屏幕大小和缩放 - 至少这是我的假设),所以如果你看不到它,让我告诉你我在这里看到的截图:
看到红色图像与其边框之间的虚假空白了吗?它是最右边的边框。
对于我的用例,这个空间不仅看起来难看,而且几乎无法接受:我正在尝试在游戏中实现一个健康栏,而这个空间暗示健康栏未满,即使它已满。
为什么会出现这个空间,有什么办法可以摆脱它?
(Firefox,如果这很重要的话。)
【问题讨论】:
-
亚像素渲染..不难摆脱
-
顺便说一句,Chrome 上什么都没有
-
我正在使用 firefox 运行您的 sn-p 但根本没有空白。您使用的是什么版本的火箱?您可以尝试更新您的 Firefox。
-
@ChickenSoups 69.0,这是最新的。尝试调整屏幕大小或放大和缩小,当我这样做时,问题似乎随机出现和消失
标签: css svg flexbox border css-grid