我在使用display-style =「inline-block」時出現2列布局問題。 我有這個網站:負邊距右邊需要寬度+ 4像素?
<div class="A">tekst</div>
<div class="B">tekst</div>
與CSS:
.A {
background-color: blue;
height: 200px;
width: 250px;
padding-left: 25px;
margin-right: -254px;
display: inline-block;
vertical-align: top;
position: relative;
box-sizing: border-box;
z-index: 1;
}
.B {
background-color: red;
height: 400px;
width: 100%;
padding-left: 300px;
display: inline-block;
vertical-align: top;
position: relative;
box-sizing: border-box;
}
但是你可以看到,第一個div的寬度爲250個像素,但它需要一個與容限在第二個div顯示爲「next」之前-254px的權利。
這是爲什麼?我想不明白。此外,大多數示例不使用框大小,但如果將其刪除,則佈局會再次出現錯誤。
我使用的是Chrome,但它在FF和Safari中似乎也一樣。
任何幫助,非常感謝!
問候, 邁克爾
http://css-tricks.com/fighting-the-space-between-inline-block-elements/ – fcalderan
似乎添加「body {font-size:0;}」爲大多數瀏覽器解決了它,但在Safari中導致問題變得更糟(爲了正常工作,它現在需要-255px的餘量 - 正確)。 – mjepson
'font-size:0'對於較老的歌曲也不起作用(它將使用其最小字體大小)。無論如何,法布里齊奧的回答是正確的,儘管我不會稱之爲「戰鬥」空間。你只需要刪除空間,就是這樣。 –