letter-spacing屬性

在設計一個網頁的時候,有時候爲了讓頁面的可讀性更好,更加美觀;就會使用到letter-spacing屬性;

letter-spacing屬性是增加(值爲正)或減少(值爲負)字符間距;

也就是說當應用在英文是,就是增加或減少每個字母之間的間距,在中文文字中應用就是每個文字之間的間距;

然後我就遇到了問題:


第一種:當我給某個元素增加了間距letter-spacing之後,該元素最後一個字符後面依然存在letter-spacing的值,導致整個元素變大,以至於居中的效果被破壞;例如:

原始間距:

<p style="text-align: center"><span>這是一段文字</span></p>



當我增加了間距後:

<p style="text-align: center"><span style="letter-spacing: 70px">這是一段文字</span></p>


很明顯就影響了後面的元素

        這個問題的解決方法就是增加padding(padding-left/padding-right)值,讓其值大小等於letter-spacing的值;此例就是增加padding-left,就解決了問題;

<p style="text-align: center"><span style="letter-spacing: 70px;padding-left: 70px">這是一段文字</span></p>


第二種:當給按鈕裏面的文字添加letter-spacing時,就會有所不同;

當給按鈕裏面的文字增加間距時,同樣最後一個字符後面會有留白,而且可氣的是用改變padding的方法無法很好的解決這個問題(如果用改變padding值的方法解決;我們需要通過計算;因爲設置的值並不是對應的letter-spacing的值,按鈕裏面的文字本身與按鈕邊緣有默認的padding值,一般是6px(Google),假如我們設置letter-spacing爲10px,按鈕的padding-right此時就是16px,而左側原來的padding-left會被我們設置的值覆蓋,那麼就爲10px,此時按鈕文字就不居中了);

<input type="submit" name="submit" style="letter-spacing: 10px;padding-left: 10px;">



        那麼爲了不必要的這種計算,我們可以針對按鈕文字有另一個方法,設置text-indent值,大小等於letter-spacing;

text-indent屬性規定文本塊中首行文本縮進;

<input type="submit" name="submit" style="letter-spacing: 10px;text-indent: 10px;">


以上、解決了在使用letter-spacing是遇到的問題;理解後,以後用起來會更加舒服;


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章