## 偽類
CSS偽類是添加到選擇器的關鍵字,指定要選擇的元素的特殊狀態。例如,`:hover` 將在用戶懸停在選擇器指定的元素上時應用樣式。
### anchor偽類
鏈接的不同狀態都可以以不同的方式顯示。
```html
<style>
a:link {color:#000000;} /* 未訪問鏈接*/
a:visited {color:#00FF00;} /* 已訪問鏈接 */
a:hover {color:#FF00FF;} /* 鼠標移動到鏈接上 */
a:active {color:#0000FF;} /* 鼠標點擊時 */
</style>
<body>
<p><b><a href="/css/" target="_blank">這是一個鏈接</a></b></p>
<p><b>注意:</b> a:hover 必須在 a:link 和 a:visited 之后,需要嚴格按順序才能看到效果。</p>
<p><b>注意:</b> a:active 必須在 a:hover 之后。</p>
</body>
```
> 注意:在CSS定義中,a:hover必須被置于a:link和a:visited之后,a:active必須被置于
> a:hover之后,才是有效的。偽類的名稱不區分大小寫。
### first-child偽類
`:first-child` CSS 偽類代表了一組兄弟元素中的第一個元素。被匹配的元素需要具有一個父級元素。
```css
element:first-child { style properties }
```
上面的CSS作用于下面的HTML:
```css
span:first-child {
background-color: lime;
}
```
```html
<div>
<span>This span is limed!</span>
<span>This span is not. :(</span>
</div>
```
### first-line偽類
"first-line" 偽元素用于向文本的首行設置特殊樣式。
在下面的例子中,瀏覽器會根據 "first-line" 偽元素中的樣式對p元素的第一行文本進行格式化:
```html
<style>
p:first-line {
color:red;
}
</style>
<body>
<p>A smooth, mild blend of coffees from Mexico, A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,A smooth, mild blend of coffees from Mexico,</p>
</body>
```
> 注意:"first-line" 偽元素只能用于塊級元素。
下面的屬性可應用于 "first-line" 偽元素:
> font properties
>
> color properties
>
> background properties
>
> word-spacing
>
> letter-spacing
>
> text-decoration
>
> vertical-align
>
> text-transform
>
> line-height
>
> clear
### before偽類
":before" 偽元素可以在元素的內容前面插入新內容。
下面的例子在每個<h1>元素前面插入一幅圖片:
```html
<style>
p:before
{
content:"臺詞:-";
background-color:yellow;
color:red;
font-weight:bold;
}
</style>
<body>
<p>The :before pseudo-element inserts content before an element.</p>
<p><b>注意:</b>僅當 !DOCTYPE 已經聲明 IE8 支持這個內容屬性</p>
</body>
```
> 大家應該想到了,既然有:before偽類,自然就有:after偽類,大家可以自行學習。
>
> 在css中實際上提供了非常多的偽類可以使用,我們指數選擇了一些常用的進行介紹,其他偽類的學習,需要大家自主學習。
- HTML基礎
- Web原理和HTML簡介
- Web原理
- HTML概念
- HTML標簽
- 標簽
- HTML固定基本結構
- 第一個HTML頁面
- 工具的使用
- 標題
- hr和p標簽
- 路徑概念
- 超級鏈接
- 列表
- 表格
- 表單的設計與使用
- 表單域的原理
- 文本框和密碼框
- 單選框和復選框
- 下拉列表框
- 多行文本和上傳
- 提交按鈕和重置按鈕
- 為CODING COFFEE加入在線購買頁
- HTML5
- 定位服務
- CSS基礎
- CSS的基礎使用
- CSS簡介
- CSS樣式規則和加載方式
- 內聯元素和區塊元素介紹
- 選擇器
- 偽類
- CSS顏色
- 背景圖片
- 文本
- CSS列表
- DIV+CSS布局
- 盒子模型的邊距和邊框
- Display屬性
- 浮動和清除浮動
- 用Position屬性進行定位
- 專題:居中和對齊
- CSS新特性
- CSS3邊框
- 動畫
- JavaScript基礎
- Hello World!
- 語句和變量
- 一切皆對象
- 標識符、注釋和區塊
- 基本數據類型和引用數據類型
- 語句
- 條件語句
- 循環語句
- 數據類型
- typeof
- number
- 字符串
- 布爾類型
- 函數
- 數組
- 運算符
- 加法運算符
- 算術、賦值、比較運算符
- 布爾運算符
- DOM模型
- DOM和DOM節點
- 特征相關屬性
- 節點對象的方法
- Element對象
- Attribute對象
- Text節點和CSS操作
- 事件模型
- 標準庫
- Number對象
- String對象
- Array對象
- Date、Boolean和Math對象
- JSON對象
- 面向對象編程中的 this
- Web Storage
- 錯誤處理機制
- Error對象和try..catch語句
- javascript的原生錯誤類型
- BOM模型
- window對象
- 計時事件
- jQuery基礎
- 認識jQuery
- jQuery對象和DOM對象
- jQuery選擇器
- jQuery Dom操作
- 查找節點和創建節點
- 插入節點和刪除節點
- 復制節點和替換節點
- 包裹節點和屬性操作
- 樣式操作
- 設置和獲取HTML、文本和值
- 遍歷節點和CSS操作
- jQuery 事件和動畫
- 事件綁定與冒泡處理
- jQuery動畫
- jQuery 插件
- validate 插件
- jQuery與Ajax的應用
- Ajax簡介
- jquery中的Ajax
- Flex布局
- Flexbox介紹
- 伸縮容器屬性介紹
- dispaly屬性
- flex-direction屬性
- flex-wrap屬性
- flex-flow屬性
- align-content屬性
- justify-content屬性
- align-items屬性
- 伸縮項目屬性介紹
- order屬性
- grow屬性
- shrink屬性
- basis屬性
- flex屬性簡寫
- align-self屬性
- Bootstrap基礎
- 起步
- 柵格系統
- 排版樣式
- 表格和按鈕
- 表單和圖片
- 輔助類和響應式工具
- 圖標菜單按鈕組件
- 輸入框和導航組件
- 路徑、分頁、標簽和徽章組件
- 巨幕、頁頭、縮略圖和警告框
- 進度、條媒體對象和Well組件
- 列表組和嵌入組件
- Canvas
- Canvas坐標體系
- Canvas畫布大小設置
- Canvas畫直線
- Canvas畫圓和矩形
- Canvas描邊與填充
- Canvas圖形變換
- Canvas線性漸變
- Canvas徑向漸變
- Canvas中的文字
- Canvas圖片繪制
- Canvas圖形畫刷
- Canvas剪輯區域
- Canvas繪制陰影
- Canvas繪制曲線
- Canvas動畫
- Canvas離屏操作
- 微信小程序
- 起步
- 小程序目錄
- 小程序配置
- 新建頁面
- WXML
- 組件
- 視圖容器
- 基礎內容
- 表單組件
- button
- checkbox
- form
- input
- label
- picker
- picker-view
- radio
- slider
- switch
- textarea
- 導航
- 媒體組件
- audio
- image
- video
- camera
- live-player
- live-pusher
- 地圖
- 畫布
- 數據綁定
- 運算
- 組合
- 列表渲染
- 條件渲染
- 模板
- 事件
- WXSS
- JS