我有一個正方形的背景圖像,其大小與覆蓋此正方形的div大小相同。 (這裏沒有提到這是神的原因)。當將這個背景圖片和div對齊時,它們在某些瀏覽器寬度上不會重疊。當重新調整瀏覽器的大小時,有時背景方塊會錯位1個像素。正如你可以在下面的例子和JSFiddle中看到的那樣,拖動瀏覽器寬度時,背景方塊的1個像素有時是可見的。取決於瀏覽器寬度的居中背景圖像和居中的DIV之間的不對齊
有沒有解決方案呢?爲什麼元素之間的定位不同步?
嘗試重新大小的小提琴視口的寬度,你會看到錯位發生時,青色背景方有時是可見的。
的jsfiddle:http://jsfiddle.net/jj3qxL3k/
代碼:
div{
background-color: yellow;
width: 800px;
margin: 0 auto;
}
html{
background: url(http://s29.postimg.org/42cuy8m7b/tester.png) center center repeat;
margin: 0;
padding: 0;
}
body{
margin: 0;
padding: 0;
}
<div>CONTENT DIV</div>
CSS試過這種沒有任何的運氣:
/* Fix form centering background input chrome */
@media screen and (-webkit-min-device-pixel-ratio:0) {
html {
margin-left: 1px;
}
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
body {
background-position: 50.001% 0;
}
}
順便說一句...這發生在我的Chrome版本43.0.2357.81米。
這將是一個瀏覽器像素四捨五入問題,我敢肯定 –
是的,正如Tanel Eero的帖子中所討論的,這個DIV和Background-image的居中應該以同樣的方式圓整!所以...讓我們聽聽「非JavaScript」,基於CSS的解決方法:) –