display:inline-block間隙產生的原因以及解決方案


display-inline-block是讓元素在一行顯示,但是這些元素在html里面是上下行排列的,所以中間有換行符,於是並排顯示就有了換行符帶來的空隙。那么如何解決呢?

方案一:將html標簽要display:inline-block 的元素寫在一行。缺點:代碼可讀性差。

方案二:給父元素設置font-size:0,缺點是子元素如果里面有文字,文字會消失不見,所以又要給子元素設置font-size:0,增加了代碼量。

方案三:給元素設置float:left,缺點高度塌陷,要清楚浮動。

方案四:設置子元素的margin-left為負值,但是元素之間的間隙大小是根據上下文的字體大小確定的,而每個瀏覽器的換行空隙大小不同,如果font-szie:16px,chrome空隙為8px,火狐空隙為4px.所以這個方法不通用。

方案五:設置父元素 display:table;word-spacing:-1em;目前這個方法可以完美解決,且兼容其他瀏覽器。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM