一、關于選擇器的命名 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說明文檔中,只提到選擇器標識符不能以數字,或一個連字號后跟數字為開頭。除 此之外,沒有相關的說明。那么各瀏覽器下的表現是否遵循這一規則呢?
1. 內聯樣式表的權值最高 1000 2. ID 選擇器的權值為 100 3. Class 類選擇器的權值為 10 4. HTML 標簽選擇器的權值為 1 CSS 優先級法則: A 選擇器都有一個權值,權值越大越優先 B 當權值相等時,后出現的樣式表設置要優于先出現的樣式表設置 C 創作者的規則高于瀏覽者:即網頁編寫者設置的CSS 樣式的優先權高于瀏覽器所設置的樣式 D 繼承的CSS 樣式不如后來指定的CSS 樣式 E 在同一組屬性設置中標有“!important”規則的優先級最大 這是規定好的,自然不能打破
CSS是一種用于屏幕上渲染html,xml等一種語言,CSS主要是在相應的元素中應用樣式,來渲染相對應用的元素,那么這樣我們選擇相應的元素就很重要了,如何選擇對應的元素,此時就需要我們所說的選擇器。在 CSS 中,選擇器是一種模式,用于選擇需要添加樣式的元素。選擇器主要是用來確定html的樹形結構中的DOM元素節點。
選擇器body>div 只操作body下級的div。div1+div2 只選擇div1 同級 隨后 相鄰最近的div2div1~p 選擇div1下所有的p屬性選擇器[attr]{} 例:[class]{color:red;} [class="text"]{color:red;}[class|="nav"]{color:red;} 選擇所有class屬性,并且屬性值唯一為nav-開頭的元素[class~="nav"]{color:red;} 選擇所有class屬性,并且包含單個完整的nav屬性值的元素[class1][class="text"]{color:red;}選擇具有class1屬性,并且具有class屬性且屬性值唯一為text的元素