在大多數(shù)文章中,咱們并未特別注意CSS文件的可保護與可讀性的問題,當完結(jié)一項前端的作業(yè)之后,許多人都會忘掉該項意圖結(jié)構(gòu)與細節(jié)?墒谴a并不是馬上就能徹底定型,在余下的時刻里還有不斷的保護作業(yè),而這些作業(yè)或許不會是你自己完結(jié)。所以,結(jié)構(gòu)優(yōu)良的代碼能很大程度上優(yōu)化它的可保護性。下面列出四則技巧進步CSS文件可保護性的辦法,以此作為攻略,以一種較好的CSS款式安排習氣來進行WEB前端開發(fā)。
一、CSS款式文件分化
關(guān)于小項目,在寫代碼之前,按頁面結(jié)構(gòu)或頁面內(nèi)容將代碼分為幾塊并給予注釋。例如,能夠分別將 大局款式、布局、字體款式、表單、評論和其他分為幾個不同的塊來持續(xù)作業(yè)。
而關(guān)于較大的工程,這樣顯然不會有什么作用。此刻,就需求將款式分化到幾個不同的款式表文件。下面的master stylesheet 就是這一辦法的比如,它的作業(yè)主要是導入其他款式文件。運用這一辦法不僅能優(yōu)化款式結(jié)構(gòu),而且有利于削減一些不必要的服務器懇求。而分化文件的辦法就有許多種,master stylesheet 運用了最常見的一種。
Example Source Code
@import "reset.css";
@import "layout.css";
@import "colors.css";
@import "typography.css";
@import "flash.css";
/* @import "debugging.css"; */
一起關(guān)于大型項目,你也能夠加上CSS文件的晉級標志或許一些診斷等其他措施,這兒不再臚陳。
二、為CSS文件樹立索引
為了能夠敏捷的了解整個CSS文件的結(jié)構(gòu),在文件最初樹立文件索引是一個不錯的挑選。
一種可行的辦法是樹立樹形的索引,結(jié)構(gòu)上的id 和 class 都能夠成為該樹的一個分支。
Example Source Code
[Layout]
* body
+ Header / #header
+ Content / #content
- Left column / #leftcolumn
- Right column / #rightcolumn
- Sidebar / #sidebar
- RSS / #rss
- Search / #search
- Boxes / .box
- Sideblog / #sideblog
+ Footer / #footer
Navigation #navbar
Advertisements .ads
Content header h2
或許也能夠這樣:
Example Source Code
[Contents]
1. Body
2. Header / #header
2.1. Navigation / #navbar
3. Content / #content
3.1. Left column / #leftcolumn
3.2. Right column / #rightcolumn
3.3. Sidebar / #sidebar
3.3.1. RSS / #rss
3.3.2. Search / #search
3.3.3. Boxes / .box
3.3.4. Sideblog / #sideblog
3.3.5. Advertisements / .ads
4. Footer / #footer
另一種辦法能夠只是先簡單的將內(nèi)容列舉出來,也不需求縮進。下面的一個比如中,如果你需求跳至RSS部分你只需求簡單的搜索。
Example Source Code
[Contents]
1. Body
2. Header / #header
3. Navigation / #navbar
4. Content / #content
5. Left column / #leftcolumn
6. Right column / #rightcolumn
7. Sidebar / #sidebar
8. RSS / #rss
9. Search / #search
10. Boxes / .box
11. Sideblog / #sideblog
12. Advertisements / .ads
13. Footer / #footer
/*--[8. RSS / #rss]--*/
#rss { ... }
#rss img { ... }
定義這樣一個款式檢索能夠很有用的使其別人閱覽學習你的代碼變得簡單。在制作大項意圖時分,你也能夠?qū)z索打印出來然后在你閱覽代碼的時分便利查閱。您還能夠參閱下面的文章。
CSS實戰(zhàn)經(jīng)驗:堅持CSS文件整潔與款式統(tǒng)一
三、格局化CSS特點
當咱們編寫代碼的時分,運用一些特殊的編碼風格會對進步CSS代碼的可讀性有很大協(xié)助。許多人都有各自不同的編碼風格。一部分人習氣于將色彩和字體的代碼放在前面,別的一部分則更喜愛將相似起浮和定位的更“重要”的特點放在前面。相似的,也能夠?qū)㈨撁嬖匾勒账诓季种械慕Y(jié)構(gòu)進行排序:
Example Source Code
body,
h1, h2, h3,
p, ul, li,
form {
margin: 0;
padding: 0;
border: 0;
}
一些開發(fā)者用一種更為有意思的辦法:他們將特點按首字母的順序排列。值得注意的是,這樣一種辦法可能對某些瀏覽器會發(fā)生問題。不管自己的格局怎么,你要確保你已經(jīng)明晰的定義了這些格局辦法。這樣,你的搭檔在閱覽你的代碼的時分將會感謝你的努力。您還能夠參閱下面的文章。
四、合理的利用縮進
為了讓你的代碼給人感覺更為直觀,你能夠運用一行來定義大綱元素的款式。當指定的挑選器里的特點超過三個的時分,這種辦法將帶來混亂。可是,適度的運用這種辦法,你能夠很清楚的區(qū)分相同類的不同點。
Example Source Code
#main-column { display: inline; float: left; width: 300px; }
#main-column h1 { margin-bottom: 20px; }
#main-column p { color: #333; }
一起,款式修正的保護也是個比較麻煩的問題。很多人修正款式之后就忘掉了,成果后來又發(fā)現(xiàn)修正的款式導致了頁面犯錯,不得不苦苦尋覓。因而,為修正的款式構(gòu)建一個特殊的格局就很必要了。一種很簡單的辦法是,給修正過的款式縮進,一起,也能夠運用一些注釋(比如"@new")來做一個標識。
Example Source Code
#sidebar ul li a {
display: block;
background-color: #ccc;
border-bottom: 1px solid #999; /* @new */
margin: 3px 0 3px 0;
padding: 3px; /* @new */
}
總的來說,只要樹立一個適宜的款式攻略才會對款式表的可讀性有所協(xié)助。記住,移去每一個對你了解文件沒有協(xié)助的款式攻略,防止對過多的元素運用過多的款式攻略。然后,為了一個可讀性可保護性杰出的CSS文件而努力吧。 |