IE(11)无法呈现完美的圆圈?

时间:2018-03-27 12:49:53

标签: css internet-explorer internet-explorer-11

我想像这样渲染简单的CSS圈子:

.button {
  width:30px;
  height:30px;
  border-radius:15px;
  background-color:white;
}

没什么特别的。结果应该是这样的:

good circle

http://jsfiddle.net/8qvp3oL5/

但是,Internet Explorer会像这样呈现:

bad circle

看起来IE看起来像是在右侧和底部将元素切掉半个像素。

我已经玩过宽度,高度和边界半径变量,但是从来没有改进过。例如,尺寸根本不重要,在任何情况下都可以看到这种效果。 IE总是在右侧和底部切断半个像素。

奇怪的是,一个简单的SVG图像也是如此,就像那样的白色圆圈。

Internet Explorer(11)真的无法呈现任何类型的完美圆圈吗?

更新

我发现只有当元素位于子像素上时才会发生这种情况 - 例如当元素在视口等中居中时。

我在尝试在纯HTML + CSS文件中测试相同的东西而不是通过jsfiddle时注意到了这一点。我最初无法在那里重现它,直到我发现当元素相对定位时它才会发生。例如当您将元素居中或将其相对值设置为46.5%等时

效果可以在jsfiddle上看到,因为iframe的容器不是绝对像素值。

所以问题是:有没有办法以某种方式将元素定位在离散的像素值上?至少在dppx为1的屏幕上。

0 个答案:

没有答案