您的位置:首页 > Web前端 > CSS

CSS 伪类 (Pseudo-classes)

2014-08-03 22:15 459 查看

CSS 伪类 (Pseudo-classes)

CSS 相邻兄弟选择器
CSS 伪元素

CSS 伪类用于向某些选择器添加特殊的效果。

CSS 伪类 (Pseudo-classes)实例:

超链接本例演示如何向文档中的超链接添加不同的颜色。超链接 2本例演示如何向超链接添加其他样式。超链接 - :focus 的使用本例演示如何对超链接应用 :focus 伪类(无法在 IE 中工作)。:first-child(首个子对象)本例演示 :first-child 伪类的用法。:lang(语言)本例演示 :lang 伪类的用法。

语法

伪类的语法:

selector : pseudo-class {property: value}

CSS 类也可与伪类搭配使用。

selector.class : pseudo-class {property: value}


锚伪类

在支持 CSS 的浏览器中,链接的不同状态都可以不同的方式显示,这些状态包括:活动状态,已被访问状态,未被访问状态,和鼠标悬停状态。

a:link
{color: #FF0000} /* 未访问的链接 */
a:visited
{color: #00FF00} /* 已访问的链接 */
a:hover
{color: #FF00FF} /* 鼠标移动到链接上 */
a:active
{color: #0000FF} /* 选定的链接 */
[/code]
亲自试一试
提示:在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。
提示:在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。
提示:伪类名称对大小写不敏感。

伪类与 CSS 类

伪类可以与 CSS 类配合使用:

a[code].red
: visited {color: #FF0000}

<a class="
red
" href="css_syntax.asp">CSS Syntax</a>[/code]
假如上面的例子中的链接被访问过,那么它将显示为红色。

CSS2 - :first-child 伪类

您可以使用 :first-child 伪类来选择元素的第一个子元素。这个特定伪类很容易遭到误解,所以有必要举例来说明。考虑以下标记:

<div>
[code]<p>These are the necessary steps:</p>

<ul>
<li>Intert Key</li>

<li>Turn key
<strong>clockwise</strong>
</li>
<li>Push accelerator</li>
</ul>
<p>Do
<em>not</em>
push the brake at the same time as the accelerator.</p>
</div>
[/code]
在上面的例子中,作为第一个元素的元素包括第一个 p、第一个 li 和 strong 和 em 元素。

给定以下规则:

p:first-child {font-weight: bold;}
li:first-child {text-transform:uppercase;}

第一个规则将作为某元素第一个子元素的所有 p 元素设置为粗体。第二个规则将作为某个元素(在 HTML 中,这肯定是 ol 或 ul 元素)第一个子元素的所有 li 元素变成大写。

请访问该链接,来查看这个
:first-child 实例的效果。

提示:最常见的错误是认为 p:first-child 之类的选择器会选择 p 元素的第一个子元素。
注释:必须声明
<!DOCTYPE>,这样 :first-child 才能在 IE 中生效。
为了使您更透彻地理解 :first-child 伪类,我们另外提供了 3 个例子:

例子 1 - 匹配第一个 <p> 元素

在下面的例子中,选择器匹配作为任何元素的第一个子元素的 p 元素:

<html>
<head>
<style type="text/css">
[code]p:first-child
{
color: red;
}
</style>
</head>

<body>
<p>some text</p>

<p>some text</p>
</body>
</html>[/code]
TIY

例子 2 - 匹配所有 <p> 元素中的第一个 <i> 元素

在下面的例子中,选择器匹配所有 <p> 元素中的第一个 <i> 元素:

<html>
<head>
<style type="text/css">
[code]p > i:first-child
{
font-weight:bold;
}
</style>
</head>

<body>
<p>some
<i>text</i>
. some <i>text</i>.</p>
<p>some
<i>text</i>
. some <i>text</i>.</p>
</body>
</html>[/code]
TIY

例子 3 - 匹配所有作为第一个子元素的 <p> 元素中的所有 <i> 元素

在下面的例子中,选择器匹配所有作为元素的第一个子元素的 <p> 元素中的所有 <i> 元素:

<html>
<head>
<style type="text/css">
[code]p:first-child i
{
color:blue;
}
</style>
</head>

<body>
<p>some
<i>text</i>
. some
<i>text</i>
.</p>
<p>some <i>text</i>. some <i>text</i>.</p>
</body>
</html>[/code]
TIY

CSS2 - :lang 伪类

:lang 伪类使你有能力为不同的语言定义特殊的规则。在下面的例子中,:lang 类为属性值为 no 的 q 元素定义引号的类型:

<html>
<head>

<style type="text/css">
[code]q:lang(no)
{
quotes: "~" "~"
}

</style>

</head>

<body>
<p>文字<q
lang="no"
>段落中的引用的文字</q>文字</p>
</body></html>[/code]

伪类

W3C:"W3C" 列指示出该属性在哪个 CSS 版本中定义(CSS1 还是 CSS2)。

属性描述CSS
:active向被激活的元素添加样式。1
:focus向拥有键盘输入焦点的元素添加样式。2
:hover当鼠标悬浮在元素上方时,向元素添加样式。1
:link向未被访问的链接添加样式。1
:visited向已被访问的链接添加样式。1
:first-child向元素的第一个子元素添加样式。2
:lang向带有指定 lang 属性的元素添加样式。2
CSS 相邻兄弟选择器
CSS 伪元素

Search:

CSS 参考手册
CSS 实例
CSS 测验

W3School 提供的内容仅用于培训。我们不保证内容的正确性。通过使用本站内容随之而来的风险与本站无关。W3School 简体中文版的所有内容仅供测试,对任何法律问题及风
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: