#07你認(rèn)真學(xué)了css?偽類和偽元素

文檔閱讀:

總結(jié)偽類與偽元素 | AlloyTeamwww.alloyteam.com!

前文回顧:

#00你認(rèn)真學(xué)了css庶诡?

一笤闯、偽類:

1堕阔、定義

偽類用于當(dāng)已有元素處于的某個狀態(tài)時,為其添加對應(yīng)的樣式颗味,這個狀態(tài)是根據(jù)用戶行為而動態(tài)變化

2超陆、類型

image

3、應(yīng)用場景

用偽類元素進(jìn)行效果展示
(1)link visited hover active 順序

/* 未訪問的鏈接 */
 a:link{  color: blue;  }  
a:visited{  color: green;  }  
/* 點擊后鼠標(biāo)脫離,獲得焦點的鏈接 */ 
 a:focus{  color: grey;  }
  /*鼠標(biāo)懸停時时呀,內(nèi)容顏色獲得紅色 */ 
 a:hover{  color: red;  } 
 /*選擇活動鏈接*/  
a:active{  color: pink;  }
image

(2)first-child VS first-of-type

  • h1:first-child :選擇是h1并且它是長子的元素
  • h1:first-of-type:選擇是h1并且它是它父親里h1類型中的長子的元素
    image

關(guān)于first-childVSfirst-of-type的使用在之前的css系列博客文章中有詳細(xì)解釋:
#00你認(rèn)真學(xué)了css张漂??

二、偽元素

1谨娜、定義

偽元素用于創(chuàng)建一些不在文檔樹中的元素航攒,并為其添加樣式

2、類型

image

如:


image

3趴梢、:before:after(也可以寫::before::after

<div class="box">
    <p>這是第一段</p>
  </div>
  <style>
  .box:before{
    content: 'start'
  }
  .box:after{
    content: 'end'
  }
  </style> 
image

使用偽元素beforeafter的好處:

  • 可以在后臺發(fā)現(xiàn)漠畜,p的前后分別出現(xiàn)::before::after。html的dom樹中原本沒有::before::after坞靶,現(xiàn)通過css樣式添加憔狞,使其在dom樹中添加這兩個元素。
  • 用添加::before::after 的目的是為了省標(biāo)簽彰阴。::before生成的效果瘾敢,所在的位置位于父元素(如box)的第一個子元素,::after則位于父元素(如box)的最后一個子元素硝枉,即在html的dom樹上多了兩個子元素廉丽,這兩個子元素?zé)o需在html中體現(xiàn),只需在css中表示即可妻味。
  • ::before::after所展示的效果相當(dāng)于一個行內(nèi)元素(注意行內(nèi)元素的一些特性)
  • 其中content 是必不可少

4正压、偽類選擇器的應(yīng)用場景

(1)偽類選擇器應(yīng)用于清除浮動

.clearfix:after {
    content:'';
    display:block;
    clear:both;
}

詳細(xì)解釋請回看之前我寫得關(guān)于浮動的副作用和解決辦法:

#03你認(rèn)真學(xué)了css?(基本樣式3:浮動+定位)

(2)偽類選擇器可作為替代標(biāo)簽

用代碼替代圖片责球,如使用css3實現(xiàn)一個帶邊框的三角符

思路:邊框+三角符號的組合

先確認(rèn)邊框樣式:

.bubble{
            position: relative;
            padding: 10px;
            border-radius: 3px;  /*可填可不填*/
            background: #fff;
            border: 1px solid #000;     
                        display: inline-block; 
        }
<body>
    <div class="bubble">
        hello world
    </div>
</body>

再確認(rèn)三角樣式:

.bubble:before{
            content:'';
            width: 10px;
            height: 10px;
            border-left: 1px solid #000;
            border-top: 1px solid #000;
            background: #fff;
            display: inline-block;
                        position: absolute;
                        transform: rotateZ(45deg);  
                        top: -6px;
        }
<body>
    <div class="bubble">
        hello world
    </div>
</body> 

這里基礎(chǔ)的三角樣式我們在之前已經(jīng)有涉及過怎么使用:

請戳??
#01你認(rèn)真學(xué)了css焦履?(基本樣式1)

使用偽元素怎么實現(xiàn)三角符號(css3 ):

基礎(chǔ)代碼:(關(guān)于三角形的位置參數(shù)可以使用頁面后臺進(jìn)行調(diào)試)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
         .bubble{  position: relative;  padding: 10px;  border-radius: 3px;  /*可填可不填*/  background: #fff;  border: 1px solid #000;  display: inline-block;  }  .bubble:before{  content:'';  width: 10px;  height: 10px;  border-left: 1px solid #000;  border-top: 1px solid #000;  background: #fff;  display: inline-block;  transform:  rotateZ(45deg);  position: absolute;  top: -6px;  } </style>
</head>
<body>
    <div class="bubble">
        hello world
    </div>
</body>
</html>

結(jié)果:

image

運用以上知識舉一反三,實現(xiàn)以下效果:


image

代碼請戳:
我的代碼

(3)偽類選擇器應(yīng)用于element:checked;(勾選住的一個狀態(tài))

input元素的自定義重要屬性checkbox或者radio雏逾,實現(xiàn)一個自定義的樣式

如:笑臉切換

/*今天的心情:*/
 <input type="checkbox">
<style>
input[type=checkbox]{ 
 -webkit-appearance: none;  /*去掉未勾選的方框默認(rèn)樣式*/  appearance: none;  background:  url(http://7xpvnv.com2.z0.glb.qiniucdn.com/b6dcd011-23cc-4d95-9e51-9f10100103bd.png) 0 0 no-repeat;  
display: inline-block; 
 width: 20px;  
height: 20px;  
background-size: contain;  /*背景圖片的大小*/  
vertical-align: middle;  outline: none;  
}  /*勾選之后的狀態(tài)*/ 
 input[type=checkbox]:checked{
  -webkit-appearance: none;  
appearance: none;  
background:  url(http://7xpvnv.com2.z0.glb.qiniucdn.com/538f26f0-6f3e-48d5-91e6-5b5bb730dd19.png) 0 0 no-repeat;  
display: inline-block;  
width: 20px;  
height: 20px;  
background-size: contain;  
vertical-align: middle; 
 }
 </style>

好處:

  • 沒有加js
  • 使用該屬性樣式嘉裤,對于input來說已經(jīng)實現(xiàn)勾選狀態(tài),自定義加一些自己的圖片栖博,自動加載信息

(4)偽類選擇器應(yīng)用于字體圖標(biāo)

A屑宠、為什么針對字體庫而來的字體,我們可以調(diào)整它的字體大小和顏色仇让?


image

B典奉、完整代碼如下:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
  <link rel="stylesheet" type="text/css" >
</head>
<body>
  <span class="iconfont icon-jirengulogojichu2"></span>

  <style>
    .iconfont{  font-size: 100px;  color: red;  } </style>
</body>
</html>

在css中添加這個:

/*  \e605為字體庫中的特有的一種編碼形式:unicode碼  */
.icon-jirengulogojichu2:before{content:'\e605';} 

即:


image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市丧叽,隨后出現(xiàn)的幾起案子卫玖,更是在濱河造成了極大的恐慌,老刑警劉巖踊淳,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件假瞬,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)脱茉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進(jìn)店門剪芥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人芦劣,你說我怎么就攤上這事粗俱∷涤埽” “怎么了虚吟?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長签财。 經(jīng)常有香客問我串慰,道長,這世上最難降的妖魔是什么唱蒸? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任邦鲫,我火速辦了婚禮,結(jié)果婚禮上神汹,老公的妹妹穿的比我還像新娘庆捺。我一直安慰自己,他們只是感情好屁魏,可當(dāng)我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布滔以。 她就那樣靜靜地躺著,像睡著了一般氓拼。 火紅的嫁衣襯著肌膚如雪你画。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天桃漾,我揣著相機(jī)與錄音坏匪,去河邊找鬼。 笑死撬统,一個胖子當(dāng)著我的面吹牛适滓,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播恋追,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼凭迹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了几于?” 一聲冷哼從身側(cè)響起蕊苗,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎沿彭,沒想到半個月后朽砰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年瞧柔,在試婚紗的時候發(fā)現(xiàn)自己被綠了漆弄。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡造锅,死狀恐怖撼唾,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情哥蔚,我是刑警寧澤倒谷,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站糙箍,受9級特大地震影響渤愁,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜深夯,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一抖格、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧咕晋,春花似錦雹拄、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至站辉,卻和暖如春呢撞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背饰剥。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工殊霞, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人汰蓉。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓绷蹲,卻偏偏與公主長得像,于是被迫代替她去往敵國和親顾孽。 傳聞我的和親對象是個殘疾皇子祝钢,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 本文轉(zhuǎn)載自:眾成翻譯譯者:為之漫筆鏈接:http://www.zcfy.cc/article/239原文:http...
    極樂君閱讀 7,376評論 1 62
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)若厚。 注意:講述HT...
    kismetajun閱讀 27,486評論 1 45
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案拦英? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補...
    _Yfling閱讀 13,754評論 1 92
  • 學(xué)會使用CSS選擇器熟記CSS樣式和外觀屬性熟練掌握CSS各種選擇器熟練掌握CSS各種選擇器熟練掌握CSS三種顯示...
    七彩小鹿閱讀 6,314評論 2 66
  • 偽類是一種虛構(gòu)的狀態(tài)或者是一個具有特殊屬性的元素可以使用css進(jìn)行樣式修飾。常見的幾種偽類有: 偽類前面總是加一個...
    fenerchen閱讀 4,697評論 0 2