溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

高效整潔CSS代碼原則有哪些

發(fā)布時(shí)間:2021-11-18 14:14:53 來(lái)源:億速云 閱讀:139 作者:柒染 欄目:web開發(fā)

今天就跟大家聊聊有關(guān)高效整潔CSS代碼原則有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

1. 適當(dāng)?shù)拇a注釋

代碼注釋可以讓別人更容易讀懂你的代碼,且合理的組織代碼注釋,可使得結(jié)構(gòu)更加清晰。你可以選擇做的樣式表的開始添加目錄:

/*------------------------------------   1. Reset   2. Header   3. Content   4. SideBar   5. Footer   ----------------------------------- */

如此你代碼的結(jié)構(gòu)就一目了然,你可以容易的查找和修改代碼。

而對(duì)于代碼的主內(nèi)容,也應(yīng)適當(dāng)?shù)募右詣澐郑踔猎谟斜匾牡胤皆趯?duì)代碼加以注釋說(shuō)明,這樣也有利于團(tuán)隊(duì)開發(fā):

/*** Header ***/   #header{ height:145px; position:relative; }   #header h1{ width:324px; margin:45px 0 0 20px; float:left; height:72px;}    /*** Content ***/   #content{ background:#fff; width:650px; float:left; min-height:600px; overflow:hidden;}   #content h1{color:#F00}/* 設(shè)置字體顏色 */   #content .posts{ overflow:hidden; }   #content .recent{ margin-bottom:20px; border-bottom:1px solid #f3f3f3; position:relative; overflow:hidden; }    /*** Footer ***/   #footer{ clear:both; padding:50px 5px 0; overflow:hidden;}   #footer h4{ color:#b99d7f; font-family:Arial, Helvetica, sans-serif; font-size:1.1em; }

2. 給你的CSS代碼排序

如果代碼中的屬性都能按照字母排序,那查找修改的時(shí)候就能更加快速:

/*** 樣式屬性按字母排序 ***/   div{   background-color:#3399cc;   color:#666;   font:1.2em/1.4em Arial, Helvetica, sans-serif;   height:300px;   margin:10px 5px;   padding:5px 0 10px 5px;   width:30%;   z-index:10;   }

3. 保持CSS的可讀性

書寫可讀的CSS將會(huì)使得更容易查找和修改樣式。對(duì)于以下兩種情況,哪種可讀性更高,我想不言而明。

/*** 每個(gè)樣式屬性寫一行 ***/   div{   background-color:#3399cc;   color:#666;   font: 1.2em/1.4em Arial, Helvetica, sans-serif;   height:300px;   margin:10px 5px;   padding:5px 0 10px 5px;   width:30%;   z-index:10;   }    /*** 所有的樣式屬性寫在同一行 ***/   div{ background-color:#3399cc; color:#666; font: 1.2em/1.4em Arial, Helvetica, sans-serif; height:300px; margin:10px 5px; padding:5px 0 10px 5px; width:30%; z-index:10; }

當(dāng)對(duì)于一些樣式屬性較少的選擇器,我會(huì)寫到一行:

/*** 選擇器屬性少的寫在同一行 ***/   div{ background-color:#3399cc; color:#666;}

對(duì)于這個(gè)規(guī)則并非硬性規(guī)定,但無(wú)論您采用哪種寫法,我的建議是始終保持代碼一致。屬性多的分行寫,屬性少于3個(gè)可以寫一行。

4. 選擇更優(yōu)的樣式屬性值

CSS中有些屬性采用不同的屬性值,雖然達(dá)到的效果差不多,當(dāng)性能上卻存在著差異,如

區(qū)別在于border:0把border設(shè)為0px,雖然在頁(yè)面上看不見,但按border默認(rèn)值理解,瀏覽器依然對(duì)border-width/border-color進(jìn)行了渲染,即已經(jīng)占用了內(nèi)存值。而border:none把border設(shè)為"none"即沒有,瀏覽器解析"none"時(shí)將不作出渲染動(dòng)作,即不會(huì)消耗內(nèi)存值。所以建議使用border:none;

同樣的,display:none隱藏對(duì)象瀏覽器不作渲染,不占用內(nèi)存。而visibility:hidden則會(huì)。

5. 使用<link>代替@import

首先,@import不屬于XHTML標(biāo)簽,也不是Web標(biāo)準(zhǔn)的一部分,它對(duì)于較早期的瀏覽器兼容也不高,并且對(duì)于網(wǎng)站的性能有某些負(fù)面的影響。

6. 使用外部樣式表

這個(gè)原則始終是一個(gè)很好的設(shè)計(jì)實(shí)踐。不單可以更易于維護(hù)修改,更重要的是使用外部文件可以提高頁(yè)面速度,因?yàn)镃SS文件都能在瀏覽器中產(chǎn)生緩存。內(nèi)置在HTML文檔中的CSS則會(huì)在每次請(qǐng)求中隨HTML文檔重新下載。所以,在實(shí)際應(yīng)用中,沒有必要把CSS代碼內(nèi)置在HTML文檔中:

<style type="text/css" >   #container{ .. }   #sidebar{ .. }   </style>

而是使用<link>導(dǎo)入外部樣式表:

<link rel="stylesheet" type="text/css" href="css/styles.css" />

7. 避免使用CSS表達(dá)式(Expression)

CSS表達(dá)式是動(dòng)態(tài)設(shè)置CSS屬性的強(qiáng)大(但危險(xiǎn))方法。Internet Explorer從第5個(gè)版本開始支持CSS表達(dá)式。下面的例子中,使用CSS表達(dá)式可以實(shí)現(xiàn)隔一個(gè)小時(shí)切換一次背景顏色:

background-color: expression( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" );

如上所示,expression中使用了JavaScript表達(dá)式。CSS屬性根據(jù)JavaScript表達(dá)式的計(jì)算結(jié)果來(lái)設(shè)置。

表達(dá)式的問題就在于它的計(jì)算頻率要比我們想象的多。不僅僅是在頁(yè)面顯示和縮放時(shí),就是在頁(yè)面滾動(dòng)、乃至移動(dòng)鼠標(biāo)時(shí)都會(huì)要重新計(jì)算一次。給CSS表達(dá)式增加一個(gè)計(jì)數(shù)器可以跟蹤表達(dá)式的計(jì)算頻率。在頁(yè)面中隨便移動(dòng)鼠標(biāo)都可以輕松達(dá)到10000次以上的計(jì)算量。

如果必須使用CSS表達(dá)式,一定要記住它們要計(jì)算成千上萬(wàn)次并且可能會(huì)對(duì)你頁(yè)面的性能產(chǎn)生影響。所以,在非不得已,請(qǐng)避免使用CSS表達(dá)式。

8. 代碼壓縮

當(dāng)你決定把網(wǎng)站項(xiàng)目部署到網(wǎng)絡(luò)上,那你就要考慮對(duì)CSS進(jìn)行壓縮,出去注釋和空格,以使得網(wǎng)頁(yè)加載得更快。壓縮您的代碼,可以采用一些工具,如YUI Compressor,利用它可精簡(jiǎn)CSS代碼,減少文件大小,以獲得更高的加載速度。

看完上述內(nèi)容,你們對(duì)高效整潔CSS代碼原則有哪些有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

css
AI