# CSS 伪元素 (Pseudo-elements)
**CSS 伪元素用于向某些选择器设置特殊效果。**
## 语法
伪元素的语法:
```
selector:pseudo-element {property:value;}
```
CSS 类也可以与伪元素配合使用:
```
selector.class:pseudo-element {property:value;}
```
## :first-line 伪元素
"first-line" 伪元素用于向文本的首行设置特殊样式。
在下面的例子中,浏览器会根据 "first-line" 伪元素中的样式对 p 元素的第一行文本进行格式化:
### 实例
```
p:first-line
{
color:#ff0000;
font-variant:small-caps;
}
```
注释:"first-line" 伪元素只能用于块级元素。
注释:下面的属性可应用于 "first-line" 伪元素:
* font
* color
* background
* word-spacing
* letter-spacing
* text-decoration
* vertical-align
* text-transform
* line-height
* clear
## :first-letter 伪元素
"first-letter" 伪元素用于向文本的首字母设置特殊样式:
```
p:first-letter
{
color:#ff0000;
font-size:xx-large;
}
```
注释:"first-letter" 伪元素只能用于块级元素。
注释:下面的属性可应用于 "first-letter" 伪元素:
* font
* color
* background
* margin
* padding
* border
* text-decoration
* vertical-align (仅当 float 为 none 时)
* text-transform
* line-height
* float
* clear
## 伪元素和 CSS 类
伪元素可以与 CSS 类配合使用:
```
p.article:first-letter
{
color: #FF0000;
}
<p class="article">This is a paragraph in an article。</p>
```
上面的例子会使所有 class 为 article 的段落的首字母变为红色。
## 多重伪元素
可以结合多个伪元素来使用。
在下面的例子中,段落的第一个字母将显示为红色,其字体大小为 xx-large。第一行中的其余文本将为蓝色,并以小型大写字母显示。段落中的其余文本将以默认字体大小和颜色来显示:
```
p:first-letter
{
color:#ff0000;
font-size:xx-large;
}
p:first-line
{
color:#0000ff;
font-variant:small-caps;
}
```
## CSS2 - :before 伪元素
":before" 伪元素可以在元素的内容前面插入新内容。
下面的例子在每个 <h1> 元素前面插入一幅图片:
```
h1:before
{
content:url(logo.gif);
}
```
## CSS2 - :after 伪元素
":after" 伪元素可以在元素的内容之后插入新内容。
下面的例子在每个 <h1> 元素后面插入一幅图片:
```
h1:after
{
content:url(logo.gif);
}
```
## 伪元素
_W3C_:"W3C" 列指示出该属性在哪个 CSS 版本中定义(CSS1 还是 CSS2)。
| 属性 | 描述 | CSS |
| --- | --- | --- |
| [:first-letter](/cssref/pr_pseudo_first-letter.asp) | 向文本的第一个字母添加特殊样式。 | 1 |
| [:first-line](/cssref/pr_pseudo_first-line.asp) | 向文本的首行添加特殊样式。 | 1 |
| [:before](/cssref/pr_pseudo_before.asp) | 在元素之前添加内容。 | 2 |
| [:after](/cssref/pr_pseudo_after.asp) | 在元素之后添加内容。 | 2 |
- HTML 基础
- HTML 简介
- 基本的 HTML 标签 - 四个实例
- HTML 元素
- HTML 属性
- HTML 标题
- HTML 段落
- HTML 文本格式化
- HTML 编辑器
- HTML CSS
- HTML 链接
- HTML 图像
- HTML 表格
- HTML 列表
- HTML <div> 和 <span>
- HTML 布局
- HTML 表单和输入
- HTML 框架
- HTML Iframe
- HTML 背景
- HTML 颜色
- HTML 颜色名
- HTML 4.01 快速参考
- HTML 高级
- HTML <!DOCTYPE>
- HTML 头部元素
- HTML 脚本
- HTML 字符实体
- HTML 统一资源定位器
- HTML URL 字符编码
- HTML Web Server
- HTML 媒体
- HTML 多媒体
- HTML Object 元素
- HTML 音频
- HTML 视频
- HTML XHTML
- XHTML 简介
- XHTML - 元素
- XHTML - 属性
- HTML 5 教程
- HTML 5 简介
- HTML 5 视频
- HTML 5 Video + DOM
- HTML 5 音频
- HTML 5 拖放
- HTML 5 Canvas
- HTML5 内联 SVG
- HTML 5 Canvas vs. SVG
- HTML5 地理定位
- HTML 5 Web 存储
- HTML 5 应用程序缓存
- HTML 5 Web Workers
- HTML 5 服务器发送事件
- HTML5 Input 类型
- HTML5 表单元素
- HTML5 表单属性
- CSS 基础
- CSS 简介
- CSS 基础语法
- CSS 高级语法
- CSS 派生选择器
- CSS id 选择器
- CSS 类选择器
- CSS 属性选择器
- 如何创建 CSS
- CSS 样式
- CSS 背景
- CSS 文本
- CSS 字体
- CSS 链接
- CSS 列表
- CSS 表格
- CSS 轮廓
- CSS 框模型
- CSS 框模型概述
- CSS 内边距
- CSS 边框
- CSS 外边距
- CSS 外边距合并
- CSS 定位
- CSS 定位 (Positioning)
- CSS 相对定位
- CSS 绝对定位
- CSS 浮动
- CSS 选择器
- CSS 元素选择器
- CSS 分组
- CSS 类选择器详解
- CSS ID 选择器详解
- CSS 属性选择器详解
- CSS 后代选择器
- CSS 属性选择器详解
- CSS 后代选择器
- CSS 子元素选择器
- CSS 相邻兄弟选择器
- CSS 伪类 (Pseudo-classes)
- CSS 伪元素 (Pseudo-elements)
- CSS 高级
- CSS 水平对齐
- CSS 尺寸 (Dimension)
- CSS 分类 (Classification)
- CSS 导航条
- CSS 图片库
- CSS 图像透明度
- CSS2 媒介类型
- CSS 注意事项
- CSS3 教程
- CSS3 简介
- CSS3 边框
- CSS3 背景
- CSS3 文本效果
- CSS3 字体
- CSS3 2D 转换
- CSS3 3D 转换
- CSS3 过渡
- CSS3 动画
- CSS3 多列
- CSS3 用户界面
- Firebug 教程
- Firebug 教程
- 使用Firebug查看和编辑HTML和CSS
- 使用 Firebug 调试 JavaScript
- Firebug页面概况查看
- Firebug动态执行JavaScript
- Firebug记录Javascript日志
- Firebug监控网络情况
- 免责声明