margin: 0 auto;
原意用於水平居中對齊,所以必須要得到自身的寬度才能定下自身在父級中居中的位置(此寬度必須爲確切數值,默認爲0),由於inline-block元素是塊級元素,所以自己本身的寬度取決於內容本身的寬度,但是這個寬度並不是確切數值,所以代碼在搜尋的時候不知道該給多少寬度,就選取了默認的0,導致居中失效。
解決方法:
情況簡單(例如兄弟級別只有一個inline-block元素)的情況下,在父級元素中加入
text-align: center;
情況複雜(兄弟級別元素比較複雜,並且有不同的位置參數)的情況下,最好在html層面重新佈局,考慮到inline-block的元素特性再做安排。或者給前面的兄弟元素給予margin-right或者後面的兄弟元素給予margin-left來佈局。但是選用這種方案比較不靈活,在面對網站自適應改變的時候往往會出一些位置上的小問題。