摘要:現(xiàn)在我們經(jīng)常在源碼中看到如下的寫法這里的和就是我們今天來探討的偽元素之二。舉例說明在這里我們給偽元素添加了屬性,并賦值為。這里需要注意兩者使用的順序,偽元素應(yīng)該位于后面,如果順序改為是無效的。
現(xiàn)在我們經(jīng)常在 html 源碼中看到如下的寫法:
這里的 ::after 和 ::before 就是我們今天來探討的 css 偽元素之二 - :before && :after。
偽元素首先我們要明白什么是偽元素,css 設(shè)置偽元素是為了方便給某些選擇器添加特殊的效果。偽元素的語法格式一般為:
selector:pseudo-element {property:value;}
這里的 property 是指偽元素的屬性。此外,css 類也可以與偽元素配合使用,格式如下:
selector.class:pseudo-element {property:value;}
偽元素就是這樣通過賦值給自己屬性從而給指定的選擇器添加上樣式的效果。
:before如同對偽元素的名稱一樣,:before 是用來給指定的元素的內(nèi)容前面插入新的內(nèi)容。舉例說明:
.before:before{content:"you before"; color:red;}me
在這里我們給偽元素 :before 添加了屬性 content,并賦值為 you before。我們來看效果:
//在指定元素的內(nèi)容 me 前添加了新內(nèi)容 you before
我們不難發(fā)現(xiàn)這里通過偽元素 :before 添加的新內(nèi)容區(qū)域默認(rèn)的 display 屬性值為 inline,那么我們可不可以修改新內(nèi)容區(qū)域的屬性,答案是肯定的。你可以像修改其他元素一樣修改它的樣式,我們來將它的 display 屬性值來改為 block。
.before:before{content:"you before"; display:block; color:red;}me
現(xiàn)在我們再來看下效果:
//由偽元素 :before 生成新內(nèi)容區(qū)域果然變?yōu)榱藟K元素
content 屬性對于偽元素 :before 和 :after 而言,屬性 content 是否為必選項呢?我們嘗試把 content 移除。
.before:before{display:block; color:red;}me
//沒有了 content 屬性,新內(nèi)容自然是為空的
//同時我們查看 html 源碼會發(fā)現(xiàn),:before 是沒有生效的
那么我們設(shè)為空呢?
.before:before{content:""; display:block; color:red;}me
//新內(nèi)容依然為空
//此時 :before 生效
所以我們明白,對于偽元素 :before 和 :after 而言,屬性 content 是必須設(shè)置的,那么在上面的例子,我們知道屬性的值可以為字符串,那么還可以為其他形式嗎?答案是可以的,它還可以是指向一張圖片的 URL:
content: url( "img/icon.png" )配合偽類使用
偽元素 :before 還可以配合偽類使用,這里舉經(jīng)常與 :before 配合使用的偽類 :hover 為例:
.before:hover:before{content:"you before"; color:red;}me
//無內(nèi)容
//鼠標(biāo)移至 div 上時,新內(nèi)容出現(xiàn)。
這里需要注意兩者使用的順序,偽元素應(yīng)該位于后面,如果順序改為 .before:before:hover 是無效的。
配合取值函數(shù) attr() 使用還有一種較為常見的用法,即配合取值函數(shù) attr() 一起使用,如:
a::before{content: attr(title)}
此時達(dá)到的效果相當(dāng)于:
專業(yè)面向開發(fā)者的中文技術(shù)問答社區(qū):after
偽元素 :after 與 偽元素 :before 類型相同,只不過它指定的屬性 content 值為出現(xiàn)在指定元素內(nèi)容的后面,同樣舉例說明:
.after:after{content:"after you"; color:#F00;}I
//偽元素 :after 生成的新內(nèi)容區(qū)域出現(xiàn)在指定元素內(nèi)容的而后面
:after 其他特征與 :before 一致,可以參考上文,在此就不贅述。
參考http://www.bennadel.com/blog/2445-using-css-pseudo-elements-before-and-after.htm
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/110830.html
摘要:現(xiàn)在我們經(jīng)常在源碼中看到如下的寫法這里的和就是我們今天來探討的偽元素之二。舉例說明在這里我們給偽元素添加了屬性,并賦值為。這里需要注意兩者使用的順序,偽元素應(yīng)該位于后面,如果順序改為是無效的。 現(xiàn)在我們經(jīng)常在 html 源碼中看到如下的寫法: showImg(http://segmentfault.com/img/bVb9y2); 這里的 ::after 和 ::before 就是...
摘要:一的用法如同對偽元素的名稱一樣,是用來給指定的元素的內(nèi)容前面插入新的內(nèi)容。二偽類和偽元素的區(qū)別偽類種類偽元素種類偽類作用對象是整個元素例如盡管這些條件不是基于的,但結(jié)果每一個都是作用于一個完整的元素,比如整個鏈接,段落,等等。 一::before && :after的用法 :before 如同對偽元素的名稱一樣,:before 是用來給指定的元素的內(nèi)容前面插入新的內(nèi)容。舉例說明: .b...
說道JavaScript的代碼優(yōu)化,就先要做的是準(zhǔn)確的測試JavaScript的代碼執(zhí)行時間。簡單來說就是采集大量的執(zhí)行樣本進(jìn)行數(shù)學(xué)統(tǒng)計和分析,這里我們使用的是benchmark.js來檢測代碼的執(zhí)行情況。 首先我們需要在項目中安裝依賴,代碼如下: yarnaddbenchmark--save #或者 npmibenchmark--save 然后我們寫一個測試代碼,如下所示: ...
小編寫這篇文章的主要目的,就是給大家詳細(xì)的講解一些關(guān)于Python Behave框架知識的一些相關(guān)解答,大家要仔細(xì)的進(jìn)行閱讀哦。 behave是python語言的行為驅(qū)動開發(fā),全稱:Behavior-driven development,簡稱BDD。 BDD框架 BDD即行為驅(qū)動開發(fā)(Behavior Driven Development),其特點為: 經(jīng)過通俗易懂的語言,以此用來進(jìn)行...
摘要:如內(nèi)可以包含塊級元素與塊級元素并列內(nèi)聯(lián)元素與內(nèi)聯(lián)元素并列。而對于使用脫離文檔流的元素,其他盒子與其他盒子內(nèi)的文本都會無視它。css概念 CSS是Cascading Style Sheets的簡稱,中文稱為層疊樣式表,用來控制網(wǎng)頁數(shù)據(jù)的表現(xiàn),可以使網(wǎng)頁的表現(xiàn)與數(shù)據(jù)內(nèi)容分離。css引入方式1. 行內(nèi)式 行內(nèi)式是在標(biāo)記的style屬性中設(shè)定CSS樣式。這種方式?jīng)]有體現(xiàn)出CSS的優(yōu)勢,不推薦使用...
閱讀 575·2023-04-26 01:42
閱讀 3221·2021-11-22 11:56
閱讀 2391·2021-10-08 10:04
閱讀 835·2021-09-24 10:37
閱讀 3124·2019-08-30 15:52
閱讀 1731·2019-08-29 13:44
閱讀 472·2019-08-28 17:51
閱讀 2140·2019-08-26 18:26