现在这是Android的bug 41913。 感谢开启这个问题的人!
我认为这与这个旧问题差不多,尽管那里的屏幕截图看起来与我看到的有点不同。
我想要做的是创建一个具有粗顶部边框和圆角的盒子,就像这个JSBIN示例中的那样。 在桌面浏览器(支持border-radius
的浏览器)以及iOS Safari和带有Chrome的Android上都可以正常工作,但旧版Android浏览器显示如下:
(来源:gutfullofbeer.net)
边框被渲染得超过曲线的更厚部分并没有到达边缘。 有人知道是否有方法可以使浏览器正常工作吗? 这似乎是一个一贯的错误,至少要追溯到Android 2.3; 屏幕截图来自4.0.3电话。
这里是JSBIN中的HTML:
<body class=single>
<div class=dialog-bound>
Hello World
</div>
</body>
以及CSS(类名从实际项目中提取):
body.single {
background-color: #336699;
font-size: 16px;
}
body.single .dialog-bound {
background-color: #FFFCF2/*#mainBackground*/;
margin: 50px auto;
max-width: 32em;
border-width: 28px 0 8px 0;
border-style: solid;
border-color: #89BAE2;
-webkit-border-radius: 10px 10px 5px 5px;
border-radius: 10px 10px 5px 5px;
padding: 0 5px 2px 5px;
}
编辑 - 这里有一件值得注意的事情:在我的HTC One X手机上和Nexus 7上,在Chrome和Firefox中以上述CSS代码完美地运行。它也可以在我的Android 2.3下的Atrix上在Firefox中运行。因此,我真的怀疑这不是虚拟像素与实际像素问题,因为所有这些设备上的浏览器都同意视口大小。
:before
和:after
来使其工作。感谢你的努力;我会等一两天然后颁发奖金。 - Pointy