4-5. 类选择器/多类选择器

作者: 一Left一 | 来源:发表于2017-11-16 21:37 被阅读49次

    1、类选择器允许以一种独立于文档元素的方式来指定样式。
    该选择器可以单独使用,也可以与其他元素结合使用。
    要应用样式而不考虑具体设计的元素,最常用的方法就是使用类选择器。
    作用:根据指定的类名称找到对应的标签, 然后设置属性
    注意:类名的第一个字符不能使用数字

    2、格式:
    .类名{
    属性:值;
    }
    为了将类选择器的样式与元素关联,必须将 class 指定为一个适当的值:

    <h1 class="important">
    This heading is very important.
    </h1>
    
    <p class="important">
    This paragraph is very important.
    </p>
    

    在上面的代码中,两个元素的 class 都指定为 important:第一个标题( h1 元素),第二个段落(p 元素)。
    然后我们使用以下语法向这些归类的元素应用样式,即类名前有一个点号 .

    .important {color:red;}
    

    3、结合元素选择器
    类选择器可以结合元素选择器来使用,比如让段落显示为红色文本:

    p.important {color:red;}
    

    选择器现在会匹配 class 属性包含 important 的所有 p 元素,但是其他任何类型的元素都不匹配,不论是否有此 class 属性。
    选择器 p.important 解释为:“其 class 属性值为 important 的所有段落”。
    因为 h1 元素不是段落,这个规则的选择器与之不匹配,因此 h1 元素不会变成红色文本。
    如果你确实希望为 h1 元素指定不同的样式,可以使用选择器 h1.important:

    p.important {color:red;}
    h1.important {color:blue;}
    

    4、多类选择器
    在 HTML 中,一个 class 值中可能包含一个词列表( class 值而不是中包含一个词的情况),各个词之间用空格分隔。
    例如,如果希望将一个特定的元素同时标记为重要(important)和警告(warning),就可以写作:

    <p class="important warning">
    谢谢阅读我的简书,欢迎关注!
    </p>
    
    

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

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

    上面的代码的意思是:
    class 为 important 的所有元素都是粗体
    class 为 warning 的所有元素为斜体
    class 中同时包含 important 和 warning 的所有元素有一个银色的背景

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

    .important.urgent {background:silver;}
    

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

    <p class="important urgent warning">
    谢谢阅读我的简书,欢迎关注!
    </p>
    

    5、注意点:

    • 每个HTML标签都有一个属性叫做class, 也就是说每个标签都可以设置类名
    • 在同一个界面中class的名称是可以重复的
    • 在编写class选择器时一定要在class名称前面加上 .
    • 类名的命名规范和id名称的命名规范一样
    • 类名就是专门用来给CSS设置样式的
    • 在HTML中每个标签可以同时绑定多个类名
      格式:<标签名称 class="类名1 类名2 ...">
      错误的写法:<p class="para1" class="para2">

    6、注意区分

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

    类名为 fancy 的元素,该元素内部的表格单元都会以灰色背景显示橙色文字。(名为 fancy的元素可能是一个表格或者一个 div等等)

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

    类名为 fancy 的表格单元,也就是表格里面有类名为fancy的表格,将是带有灰色背景的橙色。

    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
    
            .choose{
                   color: red;
                   }
            .myheader{
                     font-size: 40px;
                     }
        </style>
    </head>
    
    <body>
    <p class="choose">我是一个段落</p>
    <h1 class="choose myheader">我是一个标题</h1>
    
    <!--
    错误的写法:
    <h1 class="choose" class="myheader">我是一个标题</h1>
    -->
    
    </body>
    

    http://www.w3school.com.cn/css/css_selector_class.asp
    http://www.w3school.com.cn/css/css_syntax_class_selector.asp

    相关文章

      网友评论

        本文标题:4-5. 类选择器/多类选择器

        本文链接:https://www.haomeiwen.com/subject/zdtbmxtx.html