高效整潔CSS代碼原則 (上)

來源:互聯網
上載者:User
CSS學起來並不難,但在大型項目中,就變得難以管理,特別是不同的人在CSS書寫風格上稍有不同,團隊上就更加難以溝通,為此總結了一些如何?高效整潔的CSS代碼原則:

1. 使用Reset但並非全域Reset

不同瀏覽器元素的預設屬性有所不同,使用Reset可重設瀏覽器元素的一些預設屬性,以達到瀏覽器的相容。但需要注意的是,請不要使用全域Reset:

*{margin:0;padding:0; }

這不僅僅因為它是緩慢和低效率的方法,而且還會導致一些不必要的元素也重設了外邊距和內邊距。在此建議參考YUI Reset和Eric Meyer的做法。

/** 清除內外邊距 **/

body, h1, h2, h3, h4, h5, h6, hr, p,

blockquote,/* structural elements 結構元素 */

dl, dt, dd, ul, ol, li,/* list elements 列表元素 */

pre,/* text formatting elements 文字格式設定元素 */

form, fieldset, legend, button, input, textarea,/* form elements 表單元素 */

th, td,/* table elements 表格元素 */

img/* img elements 圖片元素 */{

border:mediumnone;

margin:0;

padding:0;

}

/** 設定預設字型 **/

body,button, input, select, textarea {

font:12px/1.5'宋體',tahoma, Srial,helvetica,sans-serif; }

h1, h2, h3, h4, h5, h6{font-size:100%; }

em{font-style:normal;}

/** 重設列表元素 **/

ul, ol {list-style:none; }

/** 重設超連結元素 **/

a {text-decoration:none;color:#333;}

a:hover {text-decoration:underline;color:#F40; }

/** 重設圖片元素 **/

img{border:0px;}

/** 重設表格元素 **/

table {border-collapse:collapse;border-spacing:0; }

2. 良好的命名習慣

無疑亂七八糟或者無語義命名的代碼,誰看了都會抓狂。就像這樣的代碼:

.aaabb{margin:2px;color:red;}

我想即使是初學者,也不至於會在實際項目中如此命名一個class,但有沒有想過這樣的代碼同樣是很有問題的:

<h1>My name is <span>Wiky</span></h1>

問題在於如果你需要把所有原本紅色的字型改成藍色,那修改後就樣式就會變成:

.red{color:bule;}

這樣的命名就會很讓人費解,同樣的命名為.leftBar的側邊欄如果需要修改成右側邊欄也會很麻煩。所以,請不要使用元素的特性(顏色,位置,大 小等)來命名一個class或id,您可以選擇意義的命名 如:#navigation{…},.sidebar{…},.postwrap{…}

這樣,無論你如何修改定義這些class或id的樣式,都不影響它跟HTML元素間的聯絡。

另外還有一種情況,一些固定的樣式,定義後就不會修改的了,那你命名時就不用擔憂剛剛說的那種情況,如

.alignleft{float:left;margin-right:20px;}

.alignright{float:right;text-align:right;margin-left:20px;}

.clear{clear:both;text-indent:-9999px;}

那麼對於這樣一個段落

<p>我是一個段落!</p>

如果需要把這個段落由原先的靠左對齊修改為靠右對齊,那麼只需要修改它的className就為alignright就可以了。

3. 代碼縮寫

CSS代碼縮寫可以提高你寫代碼的速度,精簡你的代碼量。在CSS裡面有不少可以縮寫的屬性,包括margin,padding,border,font,background和顏色值等,如果您學會了代碼縮寫,原本這樣的代碼:

li{

font-family:Arial,Helvetica,sans-serif;

font-size:1.2em;

line-height:1.4em;

padding-top:5px;

padding-bottom:10px;

padding-left:5px;

}

就可以縮寫為:

li{

font:1.2em/1.4emArial,Helvetica,sans-serif;

padding:5px010px5px;

}

4. 利用CSS繼承

如果頁面中父元素的多個子項目使用相同的樣式,那最好把他們相同的樣式定義在其父元素上,讓它們繼承這些CSS樣式。這樣你可以很好的維護你的代碼,並且還可以減少代碼量。那麼本來這樣的代碼:

#container li{font-family:Georgia,serif; }

#container p{font-family:Georgia,serif; }

#container h1{font-family:Georgia,serif; }

就可以簡寫成:

#container{font-family:Georgia,serif; }

5. 使用多重選取器

你可以合并多個CSS選取器為一個,如果他們有共同的樣式的話。這樣做不但代碼簡潔且可為你節省時間和空間。如:

h1{font-family:Arial,Helvetica,sans-serif;font-weight:normal; }

h2{font-family:Arial,Helvetica,sans-serif;font-weight:normal; }

h3{font-family:Arial,Helvetica,sans-serif;font-weight:normal; }

可以合并為:

h1, h2, h3{ font-family:Arial, Helvetica, sans-serif; font-weight:normal; }


以上就是高效整潔CSS代碼原則 (上)的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!

  • 相關文章

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.