搜尋
首頁web前端css教學CSS樣式表規劃與管理的經驗摘要_經驗交流

徹底放棄表格佈局,使用xhtml CSS建立站也已經有一年多了。一年多的實踐也累積了一定的經驗,現在寫這篇文章來總結。在使用xhtml CSS建置的過程中有一個比較關鍵的問題:網站的CSS樣式表規劃與管理。

我的CSS管理進化史

  在最初使用CSS來控制網站樣式的時候,並不清楚CSS管理規劃之類的東西,所寫的CSS基本上都是按照需要,隨時添加,剛開始還不覺得有什麼不好,但是後來越加越多,越改越亂,雖然有一些註釋,但到最後還是變得讓我自己看著都頭疼。那時候,一個網站所有的CSS都在一個檔案中,沒有規劃,而且排序也沒多少規律,於是只能在html頁面中找到class的名稱,然後在上千行的css程式碼中搜尋自己想要的那個。

  過了一段時間,思考總結之後,我對站點的CSS樣式表進行了初級的規劃。在樣式表中初步分割了三個區域:

 Example Source Code [www.52css.com]
base 樣式表
layout 樣式表
class 樣式表
  其中「 base 樣式表」用來描述一些公共性的東西,例如全域性的body、a樣式等;「layout 樣式表」用來描述具有唯一性的id佈局,屬於整個頁面的框架式佈局;「class 樣式表「用來描述剩下的class類別的樣式,這類樣式分為可重複使用樣式和通常只在特殊頁面出現一次或幾次的樣式。

  依照這個方法佈局的確提高了不少的效率,但這種方式只適合中小型網站,在大型網站上應用還是略顯單薄,至少在多人協作的時候並不能達到最佳效率。於是就有了下面總結的較完善的CSS管理規劃模式。

較完善的CSS樣式表管理模式

  step1:個人或團隊需要將主要頁面的佈局用DIV圖的模式按層次畫出來,這個DIV圖就是在設計原型的基礎上,將頁面中的主要模組使用的ID名稱、class名標註出來,方便建立維護文件以便將來進行修改與升級。

  step2:劃分CSS結構,建立全域css及各模組css。在html頁中引用全域css,在全域css中引用各模組css。 

 Example Source Code [www.52css.com]
建立global.css為全域css,定義「* { … } body { … }」之類的全域樣式。
在全域樣式中透過「@import url(」xxx.css」);」引入模組css。
  關於模組CSS的劃分,我比較喜歡類似wordpress中的css劃分方式,一般情況下透過類似下列結構劃分:

 Example Source Code [www.52css.com]
layout. css /* 整站佈局 */
public.css /* 公用組合樣式 */
header.css /* 頁面頭部區域樣式 */
sidebar.css /* 側邊欄區域樣式樣式*/
sidebar.css /* 側邊欄區域樣式* /
main.css /* 主體區域樣式 */
footer.css /* 底部區域樣式 */
index.css /* 首頁區域特有樣式 */
form.css /* 表單表單類別樣式 */
  解釋一下,layout.css負責整個網站的佈局,例如#header, #footer等佈局的基本位置及樣式設計;public.css負責一些公用樣式定義,因為一個class中可以使用class =”navbar font12px」這種利用中間空格分隔的方法來套用多個class樣式,所以可以定義一些比較常用的或是在特殊情況下需要修改的公用class,方便局部微調;header.css、sidebar.css、 footer.css等模組是對應頭部、側邊欄、底部模組的css樣式表,可以根據網站的具體需求來增減模組;index.css是一些首頁特有元素的css,因為首頁的特殊性,我們在設計css的時候通常會對首頁進行特殊處理,一般情況下,首頁是css最複雜的一個頁面,有必要對首頁的獨有css元素進行歸類放置,也可以不用@import引入index.css,而把它單獨放到首頁引用;form.css是表單元素的樣式表,表單雖然不難,但控制起來還是比較麻煩的,單獨放到一個css文件裡方便控制,當然,類似的其他元素你也可以這麼處理。

  step3:在各個樣式表檔案中寫入樣式。 

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
構建多向佈局構建多向佈局Apr 12, 2025 am 10:15 AM

CSS中有一些新功能可以幫助我們輕鬆構建不同方向和語言的佈局。本文是關於CSS的

CSS中的寬度/高度與寬度/高度HTML屬性之間的差異是什麼?CSS中的寬度/高度與寬度/高度HTML屬性之間的差異是什麼?Apr 12, 2025 am 10:13 AM

一些HTML元素接受寬度和高度作為屬性。有些沒有。這些屬性有時被稱為呈現屬性。關於它們的問題是,他們被任何其他樣式信息所覆蓋。那

淨冠軍淨冠軍Apr 12, 2025 am 10:10 AM

我們今年再次在這裡再次成為贊助商,這真是太棒了。大粉絲。我們自己的莎拉·德拉斯納(Sarah Drasner)是DX(開發人員體驗)負責人

高度愛高度愛Apr 12, 2025 am 10:09 AM

最近看到了很多高度動作。它是靜態站點發電機世界中的一個較小的玩家,但我認為它具有巨大的潛力,因為如何

多腳步滑塊:特定的兩次案件多腳步滑塊:特定的兩次案件Apr 12, 2025 am 10:07 AM

幾年前,當Lea Verou在上面寫了一篇文章時,這是我第一次出現的概念。自此,可悲的是從規格中刪除了多範圍滑塊

通過用於Web組件的樣式選項進行思考通過用於Web組件的樣式選項進行思考Apr 12, 2025 am 10:02 AM

您將樣式放在網絡組件中的位置?

了解異步等待了解異步等待Apr 12, 2025 am 09:55 AM

在為Web編寫代碼時,最終您需要做一些可能需要一些時間才能完成的過程。 JavaScript可以真正多任務,所以

最好的第三方組件最好的第三方組件Apr 12, 2025 am 09:54 AM

我是Web組件的粉絲。我認為這是幾乎任何規模建立網站的非常好的方法(也許是絕對是最多的

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。