架構(gòu)合理的css
在當(dāng)前瀏覽器普遍支持的前提下,css被我們賦予了前所未有的使命。然而依賴css越多,樣式表文件就會變得越大越復(fù)雜。與此同時(shí),文件維護(hù)和組織的考驗(yàn)也隨之而來。
文件的組織
構(gòu)建css系統(tǒng)的第一步是大綱的擬定。(我認(rèn)為)css組織規(guī)劃的重要性堪比網(wǎng)站目錄結(jié)構(gòu),深圳商標(biāo)設(shè)計(jì)公司。(htmlor注:用詞夸張一點(diǎn),讓你加深記憶) 沒有哪種方案放之四海而皆準(zhǔn),因此我們會討論一些基本的組織方案,以及它們各自的利弊。
主css文件
通常可以使用一個(gè)主css文件,來放置所有頁面共享的規(guī)則。這個(gè)文件會包含默認(rèn)的字體、鏈接、頁眉和其他等樣式。有了主css文件之后,我們開始探討高級組織策略。
方法一:基于原型
最基本的策略是基于原型頁面(archetype page)分離css文件。假如一個(gè)網(wǎng)站的首頁、子頁面和組合頁設(shè)計(jì)不同,就可以采用基于原型的策略。(這種策略下)每個(gè)頁面都會有專屬的css文件。
在原型數(shù)量不多的情況下,深圳標(biāo)志設(shè)計(jì)公司這個(gè)方法簡單明了、行之有效。然而,當(dāng)頁面元素并不按部就班的位于各個(gè)原型頁時(shí),問題就出現(xiàn)了。如果子頁面和組合頁共享某些元素,而首頁卻沒有,我們應(yīng)該怎么做呢?
把共享元素放入主css文件。這雖不是最純正的解決辦法,卻適用于某些具體情況。可是如果網(wǎng)站龐大,(這樣做的話)主css文件會迅速膨脹——這就違背了分離文件的初衷:避免導(dǎo)入不必要的大文件。
在組合頁和子頁面的css文件里各放一份樣式代碼。(這么做)就意味著要維護(hù)冗余代碼,很顯然我們不想這樣。
創(chuàng)建一個(gè)新的文件,由這兩種頁面共享。這聽起來不錯(cuò)。不過假如只有10行代碼,我們創(chuàng)建這個(gè)文件僅僅是為了共享這10行代碼?(htmlor注:殺雞用牛刀?) 這方法很純粹,但如果網(wǎng)站龐大有很多對頁面共享很少量元素時(shí)(htmlor注:比如30對頁面分別共享10行代碼),就顯得很笨重了。
創(chuàng)建一個(gè)單獨(dú)的css文件,包含所有共享元素的樣式。這方法可能比較簡單,卻要取決于網(wǎng)站的大小和共享元素的多少。有種情況會很煩:導(dǎo)入了一個(gè)很大的css文件,但頁面只用到一小部分樣式——還是那句話,這違背了分離文件的初衷。
這就是我所說的重疊的兩難(overlap dilemma)。零碎css規(guī)則的重疊不一而足,并沒有一個(gè)完全清晰無誤的方案來組織它們。
方法二:基于頁面元素/塊
如果網(wǎng)站使用服務(wù)器端include,這個(gè)方法會很不錯(cuò)。舉例說明,如果使用頁眉include,它會有自己相應(yīng)的css文件。頁腳或者其他部分的include可以如法炮制,只須導(dǎo)入自己的css文件。這個(gè)方法簡單干凈,不過可能會產(chǎn)生很多小css文件。
深圳市中深世紀(jì)廣告有限公司作為一家在標(biāo)志設(shè)計(jì)與logo商標(biāo)設(shè)計(jì)領(lǐng)域有著十年歷史的深圳廣告設(shè)計(jì)公司,中深世紀(jì)廣告十年來一直在不斷創(chuàng)新與超越并且積極吸取國際標(biāo)志設(shè)計(jì)和logo商標(biāo)設(shè)計(jì)的理念與營養(yǎng),爭取與國際接軌,一直堅(jiān)信創(chuàng)意改變世界,不斷努力和完善自己的品牌和設(shè)計(jì),立志成為最優(yōu)秀的深圳標(biāo)志設(shè)計(jì)公司與深圳商標(biāo)設(shè)計(jì)公司。為本民族企業(yè)設(shè)計(jì)出適合的優(yōu)秀設(shè)計(jì),創(chuàng)新中國品牌,成就世界名牌。中深世紀(jì)廣告期待與您的合作。