CSS 类选择器与多类选择器的用法详解

作者:袖梨 2022-06-25

类选择器

在 CSS 中,类选择器以一个点号显示:

 代码如下 复制代码

    .center {text-align: center}

在上面的例子中,所有拥有 center 类的 HTML 元素均为居中。

在下面的 HTML 代码中,h1 和 p 元素都有 center 类。这意味着两者都将遵守 ".center" 选择器中的规则。

 代码如下 复制代码

   


    This heading will be center-aligned
   


    
   


    This paragraph will also be center-aligned.
   

注意:类名的第一个字符不能使用数字!它无法在 Mozilla 或 Firefox 中起作用。

和 id 一样,class 也可被用作派生选择器:

 代码如下 复制代码

    .fancy td {
        color: #f60;
        background: #666;
        }

在上面这个例子中,类名为 fancy 的更大的元素内部的表格单元都会以灰色背景显示橙色文字。(名为 fancy 的更大的元素可能是一个表格或者一个 div)

元素也可以基于它们的类而被选择:

 代码如下 复制代码

    td.fancy {
        color: #f60;
        background: #666;
        }

在上面的例子中,类名为 fancy 的表格单元将是带有灰色背景的橙色。

 代码如下 复制代码

   


多类选择器


1、在 HTML 中,一个 class 值中可能包含一个词列表,各个词之间用空格分隔。例如,如果希望将一个特定的元素同时标记为重要(important)和警告(warning),就可以写作(这两个词的顺序无关紧要,写成 warning important 也可以):

 代码如下 复制代码


This paragraph is a very important warning.

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

 代码如下 复制代码

.important {font-weight:bold;}
.warning {font-weight:italic;}
.important.warning {background:silver;}

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

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

 代码如下 复制代码
.important.urgent {background:silver;}

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

 代码如下 复制代码


This paragraph is a very important and urgent warning.

相关文章

精彩推荐