大前端基礎之Css3新增選擇符

2021-10-03 23:19:47 字數 3261 閱讀 7945

大前端基礎之css3新增的選擇符

css3是css技術的公升級版本,css3語言開發是朝著模組化發展的。以前的規範作為乙個模組實在是太龐大而且比較複雜,所以,把它分解為一些小的模組,更多新的模組也被加入進來。這些模組包括:盒子模型、列表模組、超連結方式 、語言模組 、背景和邊框 、文字特效 、多欄布局等。

css3的優點:css3將完全向後相容,所以沒有必要修改現在的設計來讓它們繼續運作。網路瀏覽器也還將繼續支援css2。對我們來說,css3主要的影響是將可以使用新的可用的選擇器和屬性,這些會允許實現新的設計效果(譬如動態和漸變),而且可以很簡單的設計出現在的設計效果(比如說使用分欄)

其基本特點可以分為兩個特點:

**漸進增強 progressive enhancement:**針對低版本瀏覽器進行構建頁面,保證最基本的功能,然後再針對高階瀏覽器進行效果、互動等改進和追加功能達到更好的使用者體驗。

**優雅降級 graceful degradation:*一開始就構建完整的功能,然後再針對低版本瀏覽器進行相容。

兩者的區別:優雅降級是從複雜的現狀開始,並試圖減少使用者體驗的供給,而漸進增強則是從乙個非常基礎的,能夠起作用的版本開始,並不斷擴充,以適應未來環境的需要。降級(功能衰減)意味著往回看;而漸進增強則意味著朝前看,同時保證其根基處於安全地帶。

那下面我就說說css3的選擇符:

大致可以如圖:

1、屬性選擇器:

1)e[attr]:只使用屬性名,但沒有確定任何屬性值

2)e[attr=「value」]:指定屬性名,並指定了該屬性的屬性值

3)e[attr~=「value」]:指定屬性名,並且具有屬性值,此屬性值是乙個詞列表,並且以空格隔開,其中詞列表中包含了乙個value詞,而且等號前面的「〜」必須的

4)e[attr^=「value」]:指定了屬性名,並且有屬性值,屬性值是以value開頭的

5)e[attr$=「value」]:指定了屬性名,並且有屬性值,而且屬性值是以value結束

6)e[attr=「value」]:指定了屬性名,並且有屬性值,而且屬值中包含了value

​ 7)e[attr|=「value」]:指定了屬性名,並且屬性值僅是value或者以「value-」開頭的值(比如說left-con)

屬性選擇符案例如圖:

2、偽類選擇器

1)結構性偽類選擇器

x:first-child 匹配子集的第乙個元素。ie7就可以支援

x:last-child 匹配父元素中最後乙個x元素

x:nth-child(n) 用於匹配索引值為n的子元素。索引值從1開始

x:only-child 這個偽類一般用的比較少,比如上述**匹配的是div下的有且僅有乙個的p,也就是說,如果div內有多個p,將不匹配。 (唯一的乙個子元素)

x:nth-last-child(n) 從最後乙個開始算索引。

注:(n) 括號裡可以指定引數值,也可以寫表示式

如:2n \2n+1 \ odd \even位置和標籤都要匹配上

x:first-of-type 匹配同級(相同的元素)兄弟元素中的第乙個x元素

​ x:last-of-type 匹配同級兄弟元素中的最後乙個x元素

​ x:nth-of-type(n) 匹配同型別中的第n個同級兄弟元素x

​ x:only-of-type 匹配屬於同型別中唯一兄弟元素的x

​ x:nth-last-of-type(n) 匹配同型別中的倒數第n個同級兄弟元素x

:root匹配文件的根元素。在html(標準通用標記語言下的乙個應用)中,根元素永遠是html

x:empty匹配沒有任何子元素(包括包含文字)的元素x

2)目標偽類選擇器:

e:target 選擇匹配e的所有元素,且匹配元素被相關url指向 (如:錨點鏈結)

動態偽類選擇器

e:link鏈結偽類選擇器

說明:選擇匹配的e元素,而且匹配元素被定義了超連結並未被訪問過。常用於鏈結描點上

e:visited鏈結偽類選擇器

說明:選擇匹配的e元素,而且匹配元素被定義了超連結並已被訪問過。常用於鏈結描點

e:active使用者行為選擇器

說明:選擇匹配的e元素,且匹配元素被啟用。常用於鏈結描點和按鈕上

e:hover使用者行為選擇器

說明:選擇匹配的e元素,且使用者滑鼠停留在元素e上。ie6及以下瀏覽器僅支援a:hover

e:focus使用者行為選擇器

說明:選擇匹配的e元素,而且匹配元素獲取焦點

3)ui 元素狀態偽類選擇器

e:enabled匹配所有使用者介面(form表單)中處於可用狀態的e元素

e:disabled匹配所有使用者介面(form表單)中處於不可用狀態的e元素

e:checked匹配所有使用者介面(form表單)中處於選中狀態的元素e

預設選中: checked 禁用:disabled 可用:enabled

e::selection 匹配e元素中被使用者選中或處於高亮狀態的部分層級選擇器

4:後代選擇器

e>f

子選擇器

選擇匹配的f元素,且匹配的f元素是所匹配的e元素的子元素

e+f

相鄰兄弟選擇器(找後面的相鄰的第乙個同輩元素)

選擇匹配的f元素,且匹配的f元素緊位於匹配的e元素的後面

e~f

通用選擇器 (找後面的所有同輩元素)

選擇匹配的f元素,且位於匹配的e元素後的所有匹配的f元素

CSS3選擇符語法

css3選擇符語法概覽 n z8 c3 h k0 k7 選擇符型別 表示式描述 子串匹配的屬性選擇符 e att val 匹配具有att屬性 且值以val開頭的e元素 子串匹配的屬性選擇符 e att val 匹配具有att屬性 且值以val結尾的e元素 子串匹配的屬性選擇符 e att val 匹...

CSS3 新增選擇器

新增選擇器 用法描述 element1 element2 p u選擇在同乙個父級元素下的p後面的所有的ul 選擇其 src 屬性值以 https 開頭的每個a元素 attribute value a src pdf 選擇其 src 屬性以 pdf 結尾的所有a元素 attribute value a...

css3新增選擇器

1.屬性選擇器 1 e att 元素 屬性 選擇具有att屬性的e元素,需要選擇有某個屬性的元素,而不論是行為是什麼,可以使用簡單的屬性選擇器 注 可以根據多個屬性進行選擇,只需要將屬性選擇器連線即可。2 e att val 元素 屬性 屬性值 選擇具有att屬性且屬性值為val的e元素,進一步縮小...