国外设计欣赏网站 - DOOOOR.com

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,微信登陆

帖子

[DIV+CSS] CSS 类选择器详解

[复制链接]
发表于 11-28-2011 05:33 | 显示全部楼层 |阅读模式

类选择器允许以一种独立于文档元素的方式来指定样式。

CSS 类选择器

类选择器允许以一种独立于文档元素的方式来指定样式。

该选择器可以单独使用,也可以与其他元素结合使用。

提示:只有适当地标记文档后,才能使用这些选择器,所以使用这两种选择器通常需要先做一些构想和计划。

要应用样式而不考虑具体设计的元素,最常用的方法就是使用类选择器。

修改 HTML 代码

在使用类选择器之前,需要修改具体的文档标记,以便类选择器正常工作。

为了将类选择器的样式与元素关联,必须将 class 指定为一个适当的值。请看下面的 HTML 代码:

<h1 class="important">+ I! H4 B& j, h9 B, w
This heading is very important.
3 F$ ^4 a1 ?2 t3 O</h1>
3 l" Z8 [; I/ k7 ?8 c/ {  A) J& V$ O. T' _/ Q6 |' p
<p class="important">5 S5 |3 @! A& s0 m& H7 ?" G: o1 t
This paragraph is very important., `' R6 [, ~2 H. U* Z' T& \
</p>
. D! p$ S) y' m1 v  K" q

在上面的代码中,两个元素的 class 都指定为 important:第一个标题( h1 元素),第二个段落(p 元素)。

语法

然后我们使用以下语法向这些归类的元素应用样式,即类名前有一个点号(.),然后结合通配选择器:

*.important {color:red;}

如果您只想选择所有类名相同的元素,可以在类选择器中忽略通配选择器,这没有任何不好的影响:

.important {color:red;}

亲自试一试

结合元素选择器

类选择器可以结合元素选择器来使用。

例如,您可能希望只有段落显示为红色文本:

p.important {color:red;}

选择器现在会匹配 class 属性包含 important 的所有 p 元素,但是其他任何类型的元素都不匹配,不论是否有此 class 属性。选择器 p.important 解释为:“其 class 属性值为 important 的所有段落”。 因为 h1 元素不是段落,这个规则的选择器与之不匹配,因此 h1 元素不会变成红色文本。

如果你确实希望为 h1 元素指定不同的样式,可以使用选择器 h1.important:

p.important {color:red;}2 c* p) m# w$ h! w! K3 U
h1.important {color:blue;}
9 M) o& m6 r5 N# H, n/ d0 S: b

亲自试一试

CSS 多类选择器

在上一节中,我们处理了 class 值中包含一个词的情况。在 HTML 中,一个 class 值中可能包含一个词列表,各个词之间用空格分隔。例如,如果希望将一个特定的元素同时标记为重要(important)和警告(warning),就可以写作:

<p class="important warning">
, E7 T- V4 I! D( D+ V; _, k3 mThis paragraph is a very important warning.. ]6 z: V; T3 R/ G5 v
</p>( @0 |# ^+ j6 I$ ~2 C, c

这两个词的顺序无关紧要,写成 warning important 也可以。

我们假设 class 为 important 的所有元素都是粗体,而 class 为 warning 的所有元素为斜体,class 中同时包含 important 和 warning 的所有元素还有一个银色的背景 。就可以写作:

.important {font-weight:bold;}
) g$ ~" [/ g9 ]1 `, `4 p1 P.warning {font-weight:italic;}0 ^/ q% E' b  k3 Y# I! G
.important.warning {background:silver;}- ^  v: q; O1 X

亲自试一试

通过把两个类选择器链接在一起,仅可以选择同时包含这些类名的元素(类名的顺序不限)。

如果一个多类选择器包含类名列表中没有的一个类名,匹配就会失败。请看下面的规则:

.important.urgent {background:silver;}

不出所料,这个选择器将只匹配 class 属性中包含词 important 和 urgent 的 p 元素。因此,如果一个 p 元素的 class 属性中只有词 important 和 warning,将不能匹配。不过,它能匹配以下元素:

<p class="important urgent warning">8 n* J/ |6 T0 d" T
This paragraph is a very important and urgent warning.' D2 R; |8 W* s7 M5 M, H/ p  g
</p>
8 z# Y( x- O( S( M

亲自试一试

重要事项:在 IE7 之前的版本中,不同平台的 Internet Explorer 都不能正确地处理多类选择器。

|2011-2026-版权声明|平台(网站)公约|DOOOOR 设计网 ( 吉ICP备2022003869号 )

GMT+8, 5-12-2025 11:06 , Processed in 0.494382 second(s), 43 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表