国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

關于CSS樣式表文件組織形式的整理

2024-07-11 08:47:06
字體:
來源:轉載
供稿:網友
現在的開發環境CSS越來越成為主流,各企業與IT公司對CSS也越來越重視,大家的學習也熱情高漲,CSS被我們賦予了前所未有的使命。然而依賴css越多,樣式表文件就會變得越大越復雜。與此同時,文件維護和組織的考驗也隨之而來。曾幾何時只要一個CSS文件就夠了——所有規則(rule)匯聚一堂,增刪改都很方便——可這種日子早已遠去?,F在構建網站時,必須花點時間好好籌劃,如何組織規劃,構建合理高效的CSS系統。

  首先從文件的組織開始,構建css系統的第一步是大綱的擬定。jb51.com認為css組織規劃的重要性堪比網站目錄結構。沒有哪種方案放之四海而皆準,因此我們會討論一些基本的組織方案,以及它們各自的利弊。你需要根據你開發項目的特點進行思考,以確實最終的方案。

  通常可以使用一個主CSS文件,來放置所有頁面共享的規則。這個文件會包含默認的字體、鏈接、頁眉頁腳和其他相同模塊等樣式。有了主CSS文件之后,我們開始探討更高級CSS組織策略。

一、基于原型

  最基本的策略是基于原型頁面(archetype page)分離CSS文件。假如一個網站的首頁、子頁面和組合頁設計不同,就可以采用基于原型的策略。這種策略下每個頁面都會有專屬的CSS文件。
  在原型數量不多的情況下,這個方法簡單明了、行之有效。然而,當頁面元素并不按部就班的位于各個原型頁時,問題就出現了。如果子頁面和組合頁共享某些元素,而首頁卻沒有,我們應該怎么做呢?

  把共享元素放入主CSS文件。這雖不是最純正的解決辦法,卻適用于某些具體情況。可是如果網站龐大,(這樣做的話)主CSS文件會迅速膨脹——這就違背了分離文件的初衷:避免導入不必要的大文件。

  在組合頁和子頁面的CSS文件里各放一份樣式代碼。這么做就意味著要維護冗余代碼,很顯然我們不想這樣。

  創建一個新的文件,由這兩種頁面共享。這聽起來不錯。不過假如只有10行代碼,我們創建這個文件僅僅是為了共享這10行代碼?這方法很純粹,但如果網站龐大有很多對頁面共享很少量元素時就顯得很笨重了。

  創建一個單獨的CSS文件,包含所有共享元素的樣式。這方法可能比較簡單,卻要取決于網站的大小和共享元素的多少。有種情況會很煩:導入了一個很大的CSS文件,但頁面只用到一小部分樣式——還是那句話,這違背了分離文件的初衷。

  這就是我所說的重疊的兩難(overlap dilemma)。零碎css規則的重疊不一而足,并沒有一個完全清晰無誤的方案來組織它們。

二、基于頁面元素、模塊

  如果網站使用服務器端include,這個方法會很不錯。舉例說明,如果使用頁眉include,它會有自己相應的CSS文件。頁腳或者其他部分的include可以如法炮制,只須導入自己的CSS文件。這個方法簡單干凈,不過可能會產生很多小CSS文件。

  舉例來說,假如頁腳的樣式只需要20行css代碼,單獨創建一個文件就劃不來了。而且這個方法會導致每個頁面都包含一堆CSS文件——因為有多少include,就得有多少CSS文件。

三、基于標記

  這個方案直觀實際,與前一個類似。如果網站共有30個頁面,其中10個含有form,那么可以創建一個CSS文件專門處理form的樣式,只在這10個頁面導入它。如果另外10個頁面含有table,就創建一個文件專門處理table樣式……諸如此類。

四、其他CSS組織技巧

  除了用主觀的方法組織文件,我們還要考慮如打印、手持設備和屏幕等多種媒體類型。這雖然已經很清楚的定義過,可依舊是建立文件結構時應該考慮的一個因素。一旦必須支持多種媒體類型,主CSS文件里的某些規則可能就得重新考慮。另外,品牌聯合也可能是一個重要因素。如果涉及品牌聯合,你就得考慮哪些元素應該調整以適應另一品牌。比如分別使用不同的CSS文件等。更多的技巧歡迎你關注jb51.com的文章。

  還有一個常被忽略的技巧:使用嵌套的@import語句。只包含一連串@import語句,或者再加幾句css規則,就能創建一個CSS文件。用這個方法完全可以創建網站的主CSS文件(用@import導入各部分的樣式文件)。假如網站的每個頁面都導入了4到5個不同的CSS文件,無疑你應該考慮使用這個技巧。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 屯留县| 钟山县| 大田县| 湘阴县| 札达县| 莒南县| 滁州市| 金塔县| 桓台县| 洛浦县| 清新县| 姚安县| 阿坝| 伊金霍洛旗| 宿松县| 崇阳县| 海晏县| 东阳市| 墨玉县| 东安县| 华池县| 安阳县| 新蔡县| 子洲县| 东港市| 木里| 鄄城县| 东乌珠穆沁旗| 福泉市| 乐昌市| 南皮县| 桃江县| 新源县| 营口市| 兰溪市| 上饶市| 宝山区| 宿州市| 开封县| 铅山县| 大名县|