CSS的一個常見問題是,一旦你增加的CSS規(guī)則超過了兩行,代碼就會自動被截取成點(diǎn)點(diǎn)點(diǎn),使得代碼變得難以閱讀。這個問題看起來很微小,但是它確實(shí)會給開發(fā)帶來很多麻煩。下面讓我們來學(xué)習(xí)一下如何解決這個問題。
.foobar { /* 1 */ margin: 0; padding: 0; border: 0; background: none; /* 2 */ color: #000; font-family: Arial, sans-serif; font-size: 14px; line-height: 1.5; }
上面的CSS代碼就是一個超過兩行的例子。要讓這段代碼不被截取,可以使用CSS偽元素’::before‘或’::after‘。這里我將演示使用’::before‘。具體方法是:
.foobar::before { display: block; content: ""; height: 1.5em; margin-top: -1.5em; }
這里的’1.5em’是代碼的行高,這個高度可以根據(jù)代碼的行高來調(diào)整。通過偽元素插入一個塊級元素,并且將該塊級元素的高度設(shè)置為代碼的行高,并將其向上移動一個行高的距離,就可以讓超過兩行的代碼顯示完整了。
但是需要注意的是,這個方法僅僅是一個hack而已。修改代碼后偽元素顯示的高度需要重新計(jì)算,需要修改偽元素的樣式,所以這種做法并不是特別理想。如果希望讓CSS代碼能夠清晰地被閱讀,建議將CSS代碼拆分成多個規(guī)則,這樣會使得代碼更加清晰易懂。