本文向大家描述一下CSS伪类的用法,CSS伪类用于向某些选择器添加特殊的效果,这里主要包括锚伪类,CSS伪类和类的区别,以及:first-child伪类和:lang伪类的用法等内容,相信本文介绍一定会让你有所收获。
CSS伪类的语法:
- 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} /*选定的链接*/
提示:在CSS定义中,a:hover必须被置于a:link和a:visited之后,才是有效的。
提示:在CSS定义中,a:active必须被置于a:hover之后,才是有效的。
提示:伪类名称对大小写不敏感。
CSS伪类与CSS类
伪类可以与CSS类配合使用:
- a.red:visited{color:#FF0000}
- <aclassaclass="red"href="css_syntax.asp">CSSSyntax</a>
假如上面的例子中的链接被访问过,那么它将显示为红色。#p#
CSS2-:first-child伪类
您可以使用CSS伪类中:first-child伪类来选择元素的***个子元素。这个特定伪类很容易遭到误解,所以有必要举例来说明。考虑以下标记:
- <div>
- <p>Thesearethenecessarysteps:</p>
- <ul>
- <li>IntertKey</li>
- <li>Turnkey<strong>clockwise</strong></li>
- <li>Pushaccelerator</li>
- </ul>
- <p>Do<em>not</em>pushthebrakeatthesametimeastheaccelerator.</p>
- </div>
在上面的例子中,作为***个元素的元素包括***个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>
- <styletypestyletype="text/css">
- p:first-child{
- color:red;
- }
- </style>
- </head>
- <body>
- <p>sometext</p>
- <p>sometext</p>
- </body>
- </html>TIY
◆例子2-匹配所有<p>元素中的***个<i>元素
在下面的例子中,选择器匹配所有<p>元素中的***个<i>元素:
- <html>
- <head>
- <styletypestyletype="text/css">
- 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>TIY
◆例子3-匹配所有作为***个子元素的<p>元素中的所有<i>元素
在下面的例子中,选择器匹配所有作为元素的***个子元素的<p>元素中的所有<i>元素:
- <html>
- <head>
- <styletypestyletype="text/css">
- p:first-childi{
- 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>TIY
#p#CSS2-:lang伪类
CSS伪类中:lang伪类使你有能力为不同的语言定义特殊的规则。在下面的例子中,:lang类为属性值为no的q元素定义引号的类型:
- <html>
- <head>
- <styletypestyletype="text/css">
- q:lang(no)
- {
- quotes:"~""~"
- }
- </style>
- </head>
- <body>
- <p>文字<qlangqlang="no">段落中的引用的文字</q>文字</p>
- </body></html>
CSS伪类
浏览器支持:IEInternetExplorer,F:Firefox,N:Netscape。
W3C:“W3C”列的数字显示出伪类属性由哪个CSS标准定义(CSS1还是CSS2)。
【编辑推荐】