Safari会在我的网站上以某种比例在div之间呈现黑线。当它为一个按钮或其他东西分割出两个不同div的图像时,它会特别糟糕。我不能将BG放在两个div的父级中,因为它们是透明的.pngs。任何解决方案或只是处理它?</ p>
捕获问题http://i.stack.imgur.com/pTLki.png
TravisO也有同样的问题,我改变了页面的布局方式,原来它是一个有5行的简单表,我删除了行,只是用图像和br,仍然会发生。我试图通过CSS删除所有填充和边距,但很明显问题不是浏览器渲染,而是重新采样浏览器会将页面转换为适合屏幕的大小。您可以在以下位置查看我的破页:
答案 0 :(得分:2)
TravisO,你应该摆脱你的CSS中的img造型! 如果你只使用这个:
<style type="text/css">
*
{
margin: 0px;
padding: 0px;
}
body
{
background-color: #f00;
text-align: center;
}
</style>
它应该在你的iPhone上正确渲染!
答案 1 :(得分:2)
此问题是移动版Safari中重新调整背景图片以进行显示时产生的舍入错误的结果(这是一个错误:http://openradar.appspot.com/8684766)。
解决方案是将左侧右侧边缘的宽度增加1或2px。然后相应地调整CSS,以便默认情况下不会显示您添加的1或2个像素。
答案 2 :(得分:1)
以下CSS,添加到具有指定背景图像的有问题的div中,是我修复它的原因。任何小于3px的东西在某些Safari缩放级别仍会显示轻微的伪影。
margin-top: -3px; /* for Mobile Safari dark line artifact */
padding-top: 3px; /* for Mobile Safari dark line artifact */
答案 3 :(得分:0)
我发现改变了元素的背景颜色,周围的“灰色边框”对我有效。
答案 4 :(得分:0)
向viewport metatag添加initial-scale
值为我解决了这个问题。
<meta name="viewport" content="initial-scale=1.0">
答案 5 :(得分:0)
在div标签中显示.png-image时遇到了类似的问题。在图像的一侧渲染了一条很薄的(1 px)黑线。要修复它,我必须添加以下CSS样式:box-shadow: none;