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

首頁 > 開發 > CSS > 正文

css選擇器命名規則:差異及可能產生的問題

2024-07-11 09:02:30
字體:
來源:轉載
供稿:網友

武林網(www.survivalescaperooms.com)文章簡介:W3C CSS2.1的 4.1.3 節中提到:標識符(包括選擇器中的元素名,類和ID)只能包含字符[a- zA-Z0-9]和ISO 10646字符編碼U+00A1及以上,再加連字號(-)和下劃線(_);它們不能以 數字,或一個連字號后跟數字為開頭。它們還可以包含轉義字符加任何ISO 10646字符作為一個數

操作系統版本:Windows 7

瀏覽器版本:IE6,IE7,IE8,Firefox 3.6.2,Safari 4.0.4,Chrome 5.0.356.2 dev

受影響的瀏覽器:所有瀏覽器.

經常講到css選擇器命名規則,其實不只是在團隊合作基礎上來講這個,每個瀏覽器,IE產品,火狐,蘋果,谷歌,都會因為命名不規范會產生不同樣式..

一、關于選擇器的命名

W3C CSS2.1的 4.1.3 節中提到:標識符(包括選擇器中的元素名,類和ID)只能包含字符[a- zA-Z0-9]和ISO 10646字符編碼U+00A1及以上,再加連字號(-)和下劃線(_);它們不能以 數字,或一個連字號后跟數字為開頭。它們還可以包含轉義字符加任何ISO 10646字符作為一個數 字編碼。

由于設計到的字符很多,本文只針對字符[a-zA-Z0-9],再加連字號(-)和下劃線(_)進行討論。 關于CSS中允許使用的字符和大小寫信息,請參考W3C CSS2.1的4.1.3節

二、差異及可能產生的問題

在W3C CSS2.1說明文檔中,只提到選擇器標識符不能以數字,或一個連字號后跟數字為開頭。除 此之外,沒有相關的說明。那么各瀏覽器下的表現是否遵循這一規則呢?

請觀察如下代碼:

2324252627282930313233343536373839404142divheightfont-line-background- .1.123456.2demo.2-demo .2_demo .-2demo ._demo ._2demo .-.---.——._-.-

1234567891011121314151617181920>字母開頭>單個數字>多個數字>數字開頭 + [a-z][A-Z]>數字 + "-" 開頭>數字 + "_" 開頭>連字符(-)開頭 + [a-z][A-Z]>連字符(-) + 數字 開頭>下劃線(_)開頭 + [a-z][A-Z]>下劃線(_) + 數字 開頭>單個連字符(-)>多個連字符(-)>單個下劃線(_)>多個下劃線(_)>下劃線(_) + 連字符(-)>連字符(-) + 下劃線(_)>多個下劃線(_) + 連字符(-)>多個連字符(-) + 下劃線(_)>多個連字符(-) + 數字>多個下劃線(_) + 數字</div>

看看各瀏覽器下面的結果

觀察上表,分析各瀏覽器下的表現,總結如下

 

從上面看到,我們可以直觀的了解到選擇器的命名在各瀏覽器下的支持情況有所不同。因此,如果選擇器的命名不規范,將影響各瀏覽器下,樣式渲染不一致。比如如下代碼:

12divbackground-widthheightline- .20fontsizebackground-

1>以數字開頭的類名</div>

以數字開始的類名僅在IE6(Q)/IE7(Q)/IE8(Q)下被識別,而其它瀏覽器下則不識別(忽略該規則)

三、如何避免受此問題影響

堅持以字母開頭命名選擇器,這樣可保證在所有瀏覽器下都能兼容。

四、關于團隊合作的css命名規范

常用的css命名規則

頭:header

內容:content/container

尾:footer

導航:nav

側欄:sidebar

欄目:column

頁面外圍控制整體布局寬度:wrapper

左右中:left right center

登錄條:loginbar

標志:logo

廣告:banner

頁面主體:main

熱點:hot

新聞:news

下載:download

子導航:subnav

菜單:menu

子菜單:submenu

搜索:search

友情鏈接:friendlink

頁腳:footer

版權:copyright

滾動:scroll

內容:content

標簽頁:tab

文章列表:list

提示信息:msg

小技巧:tips

欄目標題:title

加入:joinus

指南:guild

服務:service

注冊:regsiter

狀態:status

投票:vote

合作伙伴:partner

(二)注釋的寫法:

/* Footer */

內容區

/* End Footer */

(三)id的命名:

(1)頁面結構

容器: container

頁頭:header

內容:content/container

頁面主體:main

頁尾:footer

導航:nav

側欄:sidebar

欄目:column

頁面外圍控制整體布局寬度:wrapper

左右中:left right center

(2)導航

導航:nav

主導航:mainbav

子導航:subnav

頂導航:topnav

邊導航:sidebar

左導航:leftsidebar

右導航:rightsidebar

菜單:menu

子菜單:submenu

標題: title

摘要: summary

(3)功能

標志:logo

廣告:banner

登陸:login

登錄條:loginbar

注冊:regsiter

搜索:search

功能區:shop

標題:title

加入:joinus

狀態:status

按鈕:btn

滾動:scroll

標簽頁:tab

文章列表:list

提示信息:msg

當前的: current

小技巧:tips

圖標: icon

注釋:note

指南:guild

服務:service

熱點:hot

新聞:news

下載:download

投票:vote

合作伙伴:partner

友情鏈接:link

版權:copyright

(四)class的命名:

(1)顏色:使用顏色的名稱或者16進制代碼,如

.red { color: red; }

.f60 { color: #f60; }

.ff8600 { color: #ff8600; }

(2)字體大小,直接使用”font+字體大小”作為名稱,如

.font12px { font-size: 12px; }

.font9pt {font-size: 9pt; }

(3)對齊樣式,使用對齊目標的英文名稱,如

.left { float:left; }

.bottom { float:bottom; }

(4)標題欄樣式,使用”類別+功能”的方式命名,如

.barnews { }

.barproduct { }

注意事項::

1.一律小寫;

2.盡量用英文;

3.不加中杠和下劃線;

4.盡量不縮寫,除非一看就明白的單詞.

主要的 master.css

模塊 module.css

基本共用 base.css

布局,版面 layout.css

主題 themes.css

專欄 columns.css

文字 font.css

表單 forms.css

補丁 mend.css

打印 print.css

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 佛坪县| 盘山县| 玛纳斯县| 石屏县| 隆尧县| 南皮县| 南宁市| 密云县| 鹤庆县| 成安县| 鄂伦春自治旗| 正宁县| 夏河县| 宣武区| 平潭县| 桂林市| 肇源县| 霍州市| 卓尼县| 黑河市| 治多县| 青田县| 朝阳区| 云浮市| 甘洛县| 榆林市| 阿勒泰市| 包头市| 乌兰察布市| 来宾市| 大悟县| 巴青县| 波密县| 庆城县| 凤翔县| 闵行区| 泸水县| 新宾| 石家庄市| 乐至县| 芷江|