亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

談?wù)刢ss偽類與偽元素

Berwin / 1051人閱讀

摘要:狀態(tài)偽類是基于元素當前狀態(tài)進行選擇的。在與用戶的交互過程中元素的狀態(tài)是動態(tài)變化的,因此該元素會根據(jù)其狀態(tài)呈現(xiàn)不同的樣式。單冒號用于偽類,雙冒號用于偽元素??梢酝ㄟ^對父元素添加偽類撐開父元素高度,因為就是其最后一個子元素。

css選擇器常見包括id(#id)、標簽(tag)、class(.class)、屬性[attr=attrval]等,還包括偽元素和偽類選擇器。正確的利用偽元素和偽類能夠讓我們的html結(jié)構(gòu)更清晰合理,也能在一定程度上減少js對dom的操作!

定義

偽類包含兩種:狀態(tài)偽類結(jié)構(gòu)性偽類。

狀態(tài)偽類是基于元素當前狀態(tài)進行選擇的。在與用戶的交互過程中元素的狀態(tài)是動態(tài)變化的,因此該元素會根據(jù)其狀態(tài)呈現(xiàn)不同的樣式。當元素處于某狀態(tài)時會呈現(xiàn)該樣式,而進入另一狀態(tài)后,該樣式也會失去。常見的狀態(tài)偽類主要包括:

:link 應(yīng)用于未被訪問過的鏈接;

:hover 應(yīng)用于鼠標懸停到的元素;

:active 應(yīng)用于被激活的元素;

:visited 應(yīng)用于被訪問過的鏈接,與:link互斥。

:focus 應(yīng)用于擁有鍵盤輸入焦點的元素。

結(jié)構(gòu)性偽類是css3新增選擇器,利用dom樹進行元素過濾,通過文檔結(jié)構(gòu)的互相關(guān)系來匹配元素,能夠減少class和id屬性的定義,使文檔結(jié)構(gòu)更簡潔。常見的包括:

:first-child 選擇某個元素的第一個子元素;

:last-child 選擇某個元素的最后一個子元素;

:nth-child() 選擇某個元素的一個或多個特定的子元素;

:nth-last-child() 選擇某個元素的一個或多個特定的子元素,從這個元素的最后一個子元素開始算;

:nth-of-type() 選擇指定的元素;

:nth-last-of-type() 選擇指定的元素,從元素的最后一個開始計算;

:first-of-type 選擇一個上級元素下的第一個同類子元素;

:last-of-type 選擇一個上級元素的最后一個同類子元素;

:only-child 選擇的元素是它的父元素的唯一一個子元素;

:only-of-type 選擇一個元素是它的上級元素的唯一一個相同類型的子元素;

:empty 選擇的元素里面沒有任何內(nèi)容。

偽元素是對元素中的特定內(nèi)容進行操作,而不是描述狀態(tài)。它的操作層次比偽類更深一層,因此動態(tài)性比偽類低很多。實際上,偽元素就是選取某些元素前面或后面這種普通選擇器無法完成的工作??刂频膬?nèi)容和元素是相同的,但它本身是基于元素的抽象,并不存在于文檔結(jié)構(gòu)中!常見的偽元素選擇器包括:

:first-letter 選擇元素文本的第一個字(母)。

:first-line 選擇元素文本的第一行。

:before 在元素內(nèi)容的最前面添加新內(nèi)容。

:after 在元素內(nèi)容的最后面添加新內(nèi)容。

注意事項

有時你會發(fā)現(xiàn)偽類元素使用了兩個冒號 (::) 而不是一個冒號 (:),這是 CSS3 規(guī)范中的一部分要求,目的是為了區(qū)分偽類和偽元素,大多數(shù)瀏覽器都支持這兩種表示方式。單冒號(:)用于 CSS3 偽類,雙冒號(::)用于 CSS3 偽元素。對于 CSS2 中已經(jīng)有的偽元素,例如 :before,單冒號和雙冒號的寫法 ::before 作用是一樣的。

所以,如果你的網(wǎng)站只需要兼容 webkit、firefox、opera 等瀏覽器,建議對于偽元素采用雙冒號的寫法,如果不得不兼容 IE 瀏覽器,還是用 CSS2 的單冒號寫法比較安全。

偽元素的應(yīng)用

(1) 清除浮動

如果父元素的所有子元素都是浮動的,父元素的高度則無法撐開??梢酝ㄟ^對父元素添加after偽類撐開父元素高度,因為after就是其最后一個子元素。

.clear:after {
    content: "";
    display: block;
    clear: both;
}

(2) 畫分割線

畫一條如下的分割線:




  

分割線

(3)計數(shù)器

用js做個計數(shù)器是比較常見的,但我css也能實現(xiàn)!用到的屬性有:

1> counter-reset: 屬性設(shè)置某個選擇器出現(xiàn)次數(shù)的計數(shù)器的值。默認為 0。

2> counter-increment: 屬性設(shè)置某個選取器每次出現(xiàn)的計數(shù)器增量。默認增量是 1。

3> content: 插入生成內(nèi)容。

代碼如下:




  
a b c d e f g h i j

我選擇了個字母

(4)形變

通過偽元素實現(xiàn)如下透視形變:


代碼如下:

.transform{
      position: absolute;
      top:50%;
      left: 50%;
      transform:translate(-50%,-50%);
      width: 160px;
      padding: 60px;
      text-align: center;
      color: white;
      font-size: 200%;
    }
    .transform::before{
      content:"";
      position: absolute;
      top: 0; right: 0; bottom: 0; left: 0;
      transform:perspective(40px) scaleY(1.3) rotateX(5deg);
      transform-origin: bottom;
      background:rgb(255, 145, 20);
      z-index:-1;
    }

.rhombus{
      position: absolute;
      top:50%;left: 50%;
      transform:translate(-50%,-50%);
      width: 200px;line-height:200px;
      text-align: center;
      color: white;
      font-size: 200%;
    }
    .rhombus:before{
      content: "";
      position: absolute;
      top: 0; right: 0; bottom: 0; left: 0;
      background-color:rgb(20, 255, 255);
      z-index:-1;
      transform: rotateZ(45deg);
    }

(5) 增大點擊熱區(qū)

.btn::before {
      content:"";
      position:absolute;
      top:-10px;
      right:-10px;
      bottom:-10px;
      left:-10px;
    }
總結(jié)

偽元素的本質(zhì)是在不增加dom結(jié)構(gòu)的基礎(chǔ)上添加的一個元素,在用法上跟真正的dom無本質(zhì)區(qū)別。普通元素能實現(xiàn)的效果,偽元素都可以。有些用偽元素效果更好,代碼更精簡。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/51558.html

相關(guān)文章

  • 談?wù)?/em>css偽類與偽元素

    摘要:狀態(tài)偽類是基于元素當前狀態(tài)進行選擇的。在與用戶的交互過程中元素的狀態(tài)是動態(tài)變化的,因此該元素會根據(jù)其狀態(tài)呈現(xiàn)不同的樣式。單冒號用于偽類,雙冒號用于偽元素??梢酝ㄟ^對父元素添加偽類撐開父元素高度,因為就是其最后一個子元素。 css選擇器常見包括id(#id)、標簽(tag)、class(.class)、屬性[attr=attrval]等,還包括偽元素和偽類選擇器。正確的利用偽元素和偽類能...

    hedzr 評論0 收藏0
  • 偽類與偽元素

    摘要:一偽類偽類包含兩種狀態(tài)偽類偽類和結(jié)構(gòu)性偽類。狀態(tài)偽類是基于元素當前狀態(tài)進行選擇的。二偽元素偽元素是對元素中的特定內(nèi)容進行操作,而不是描述狀態(tài)。 一、偽類 偽類包含兩種:狀態(tài)偽類(UI 偽類)和結(jié)構(gòu)性偽類。 (1)狀態(tài)偽類是基于元素當前狀態(tài)進行選擇的。 在與用戶的交互過程中元素的狀態(tài)是動態(tài)變化的,因此該元素會根據(jù)其狀態(tài)呈現(xiàn)不同的樣式。當元素處于某狀態(tài)時會呈現(xiàn)該樣式,而進入另一狀態(tài)后,該樣...

    ChanceWong 評論0 收藏0
  • 偽類與偽元素

    摘要:介紹偽類和偽元素是中很常見的兩個概念,利用的好,能夠很方便的實現(xiàn)一些特殊效果。偽類與偽元素由于用法相近,導(dǎo)致平時使用并不能很好的區(qū)分這兩個概念。偽類偽類類似于,用于對已有元素增加特殊狀態(tài),比如等。偽元素偽元素包括。 介紹 偽類和偽元素是css中很常見的兩個概念,利用的好,能夠很方便的實現(xiàn)一些特殊效果。偽類與偽元素由于用法相近,導(dǎo)致平時使用并不能很好的區(qū)分這兩個概念。偽類(pseudo-...

    kamushin233 評論0 收藏0
  • 總結(jié)常用偽類與偽元素

    摘要:總結(jié)常用偽類與偽元素偽類和偽元素是為了格式化樹以外的信息而被引入的。偽類一個偽類是以一個冒號作為前綴,被添加到一個選擇器末尾的關(guān)鍵字,可以讓指定的元素在特定的狀態(tài)呈現(xiàn)指定的樣式。 總結(jié)常用偽類與偽元素 偽類和偽元素是為了格式化 DOM 樹以外的信息而被引入的。 偽類 一個 CSS 偽類是以一個冒號(:)作為前綴,被添加到一個選擇器末尾的關(guān)鍵字,可以讓指定的元素在特定的狀態(tài)呈現(xiàn)指定的樣式...

    anRui 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<