初學html、css的同學是不是遇到過這樣一個問題?一對好朋友(兩個span元素)之間總是存在間隙。就像下圖那樣:
這是一對不快樂的 span,因為他們中間有了間隙

image.png
當我們給span元素添加了內(nèi)容時,兩個相鄰的span元素的文字之間有一個間隙
問:那么這個間隙到底是什么呢?
其實它是一個空格。
問:那這個空格時怎么來的呢?
首先先來看看我們平時的代碼書寫習慣吧
<body>
<p>
<span>舒克</span>
<span>貝塔</span>
</p>
</body>
我們是優(yōu)秀的程序猿,代碼要求格式要規(guī)范,所以我第二個span換行了
而就是這個沒毛病的換行,讓兩個span差生了間隙。
讓我們來看看怎么解決吧
聰明的你靈機一動,將代碼寫一行撒
<body>
<p>
<span>舒克</span><span>貝塔</span>
</p>
</body>
這種方法最是簡單粗暴的解決了問題,但是粗暴的方式往往會造成很多不可控的因素,后期的很多場景中也有可能讓人崩潰,畢竟團隊合作開發(fā)項目是多人參與,對于要求代碼書寫規(guī)范的人來說,這樣的寫法簡直壓死強迫癥......(腦袋里面已經(jīng)有畫面了- -.)
來看看第二種方法吧
給父元素添加 font-size:0; 在給span額外添加font-size:;
// css
<style>
p{
font-size: 0;
}
span{
font-size: 14px;
background-color: red;
}
</style>
// html
<body>
<p>
<span>舒克</span>
<span>貝塔</span>
</p>
</body>
激動的心,顫抖的手,此刻的內(nèi)心:we made it ?。?!
但這種方法也存在問題,先是font-size被重寫一次(First Blood),再者是一些老版本的瀏覽器下依舊會有間隙(Double Kill)或者有些瀏覽器對于font-size:12px;的支持不友好(Trible Kill)。
大神的解決辦法:
給span加上浮動,完美解決,哈哈哈滿上...
// css
<style>
p{
font-size: 0;
}
span{
float: left;
font-size: 14px;
background-color: red;
}
</style>
// html
<body>
<p>
<span>舒克</span>
<span>貝塔</span>
</p>
</body>

image.png