Iphone 1像素的间距仅适用于iPad,但在Safari和Chrome上可以

Iphone 1像素的间距仅适用于iPad,但在Safari和Chrome上可以,iphone,html,css,ipad,Iphone,Html,Css,Ipad,只有在iPad或iPhone上才能看到哪个。你知道怎么解决吗 在所有其他桌面浏览器中都可以 CSS 试试这个 #wrapper { margin: -2px auto; ... rest of your css.... } 可能还有一个小的分辨率问题,所以也尝试一下 #wrapper { background-color: #fff; ... rest of your css.... } 其中一个必须工作:) 更新: 我想我明白了 remove #wrapper ba

只有在iPad或iPhone上才能看到哪个。你知道怎么解决吗

在所有其他桌面浏览器中都可以

CSS

试试这个

#wrapper {
     margin: -2px auto;
... rest of your css....

}
可能还有一个小的分辨率问题,所以也尝试一下

#wrapper {
    background-color: #fff;
... rest of your css....

}
其中一个必须工作:)

更新:

我想我明白了

remove #wrapper background-color;

remove #banner-switcher background: 

有趣的是,当透明度关闭时。即使是jpg,它也显示了这个工件。看起来像webkit渲染引擎中的错误


当页面比例因子小于1.0时,这似乎是iPad上WebKit渲染引擎的一个缺陷。如果将页面比例因子保持在1.0以上,则不会显示像素间距。这可以通过元标记完成:

<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, width=device-width">

我还发现了一个简单的页面,演示了一个类似的问题(仅在iPad上出现了渲染故障):

过去,WebKit引擎中的舍入问题报告了许多错误:


尝试在
PX
中设置
#横幅的高度,而不是在
EM
中设置,两者的云层高度都是112px en 113px而不是111px。

如果不需要禁用缩放,并且如果边距技巧不起作用(它可能适用于背景颜色,但我无法使其适用于背景图像),下面是另一个解决方案:

将所有背景图像放大1或2像素(将其剪切,使其包含上/下图形的1像素副本),并使用css背景大小和背景位置确保未显示额外(不需要的)像素-仅当浏览器需要该额外像素来覆盖渲染间隙时才会使用


测试修复了Android 2.3默认浏览器的渲染错误(将于周一在iPhone和iPad上测试),以及电脑Chrome中的缩放错误。

我发现,当背景图像被放大以匹配设备分辨率时,往往会出现这种情况。我怀疑这是由于图像外边缘有少量的颜色溢出造成的,通常可以通过为更高像素密度的显示器(即本例中的视网膜)提供额外版本的背景来解决

以下技巧对我很有用:

.your-thing {
    background-repeat: no-repeat;
    background-image: url('img/your-background.png');
    background-size: 400px; /* width of "your-background.png" */
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min--moz-device-pixel-ratio: 2) {
    .your-thing {
        /* override with version which is exactly 2x larger */
        background-image: url('img/your-background@2x.png');
    }
}

上述解决方案在我的情况下非常有效。

我还通过使用overflow-x:hidden解决了iOS亚像素间距问题(在全屏站点上);停止侧边滚动和视点缩放以停止俯仰缩放。我还将holder div设置为宽度:101%;并且内部的所有元素/图像div都设置为float:left;。这意味着亚像素间距都在左侧位置,但被设置为101%宽度的holder div排除在视野之外。

也许可以尝试用
em
来定义事物,而不是
px
?奇怪的是,我甚至看不到这条线。我看到的只有两条虚线@腐蚀线只能在ipad上看到。@Jitendra Vyas在graphic clouds_light.jpg上出现了一些有趣的事情。我把它变成不透明的,从中间开始有一个像素边缘。我会把它作为非答案贴出来。如果你放大,这条线会保持1px,还是放大后会变大?如果在我的一些网站上有经验的话,即使放大,这条线在iphone上仍然是1个物理1px。我只是没有费心去修复它。你在多个I-pad上测试过吗?我在iphone上测试过,它给出了相同的渲染效果。你在ipad上测试了吗?我在这里添加了你的建议,你可以测试@lbu-没有,我已经更新了我的示例代码。你们可以在iphone或ipad上登记,电话线仍在继续。问题解决了,谢谢!修复了我的问题,也在Ipad上显示了一行!
.your-thing {
    background-repeat: no-repeat;
    background-image: url('img/your-background.png');
    background-size: 400px; /* width of "your-background.png" */
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min--moz-device-pixel-ratio: 2) {
    .your-thing {
        /* override with version which is exactly 2x larger */
        background-image: url('img/your-background@2x.png');
    }
}