• CSS选择器


    CSS选择器

    基本选择器

      通配符选择器

    * {
    border: 1px solid black;
    }  

      标签选择器

    p {
    border: 1px solid black;
    } 

      id选择器

       唯一性(每个元素标签有且仅有一个,但css中不同元素标签可以用相同的id,但是我们编码时应注意不同元素标签不使用相同的id),<p id="txt"></p>

    #txt {
    border: 1px solid black;
    }  

      class选择器

        不具有唯一性,如:<p class="txt1 txt2"></p>

    .txt1{
    border: 1px solid black;
    }
    .txt2{
    color:red;
    }  

    组合选择器

     把基本选择器通过特殊符号连接,形成有意义的可作用于内容(改变样式)的选择器

      分组选择器

      把两个或多个选择器用“,”隔开,下例中div和p标签背景均为红色;

    div,p {
    background: red;
    color: #fff;
    }
    p {
    font-size: 50px;
    }
    

      嵌套选择器(后代选择器)

      多个标签用空格隔开,指定父标签下的子元素。下例中,所有div中的p的背景为红色,而div外的p的背景则不变;div为p的祖先元素,可以不是最近的父元素。

    div p {
    background: red;
    }
    

      子元素选择器  

      多个标签用“>”隔开,前面标签必须为后面标签的父元素,祖先元素不行。

    div>p {
    background: red;
    }
    

      相邻兄弟选择器  

      多个标签用“+”隔开,相邻兄弟选择器(Adjacent sibling selector)可选择紧接在另一元素后的元素,且二者有相同父元素。下例中与div平级的p背景为红色,但div的背景未设置。

    div+p {
    background: red;
    } 

    属性选择器

       可以为拥有指定属性的 HTML 元素设置样式,而不仅限于 class 和 id 属性。实例1为带有 title 属性的所有元素设置样式

    [title]
    {
    color:red;
    }
    

      [属性]      如:[title]

      基本选择器[属性] 如:p[title]

      [属性=值]   

        如: [title=W3School]     <div title="W3School"></div>

      [属性~=值]  : 用于选取属性值中包含指定词汇的元素。用空格隔开

        如:[title~=ool]     <div title="ool School"></div>

      [属性^=值]  :匹配属性值以指定值开头的每个元素。

        如:[title^=ool]     <div title="ooll"></div>

      [属性$=值]  :匹配属性值以指定值结尾的每个元素。

        如:[title$=ool]     <div title="wool"></div>

      [属性*=值]  :匹配属性值中包含指定值的每个元素。

      [属性|=值]  :用于选取带有以指定值开头的属性值的元素,该值必须是整个单词。

    伪元素选择器

      语法:

    selector:pseudo-element {property:value;}
    

      CSS 类也可以与伪元素配合使用:

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

      :first-letter    向文本的第一个字母添加特殊样式。(只能用于块级元素)

         下面的属性可应用于 "first-letter" 伪元素: 

    • font
    • color
    • background
    • margin
    • padding
    • border
    • text-decoration
    • vertical-align (仅当 float 为 none 时)
    • text-transform
    • line-height
    • float
    • clear

      :first-line    向文本的首行添加特殊样式。(只能用于块级元素)

        下面的属性可应用于 "first-line" 伪元素:

    • font
    • color
    • background
    • word-spacing
    • letter-spacing
    • text-decoration
    • vertical-align
    • text-transform
    • line-height
    • clear
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8" />
        <title>Page Title</title> 
        <link rel="stylesheet" href="main.css">  
    </head>
    <body>
      <p>SSS</p>
    </body>
    </html>  
    p:before{
     content: url(cat.jpg);   
    }
    p:after{
        content: after;   
       }
    p{
        color:green;
    } 

     

      :before    在元素之前添加内容

      :after    在元素之后添加内容。

     伪类选择器

       参考:w3school 

      伪类的语法:

    selector : pseudo-class {property: value}

      CSS 类也可与伪类搭配使用

    elector.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 之后,才是有效的。 伪类名称对大小写不敏感。

       :first-child 伪类 

       使用 :first-child 伪类来选择元素的第一个子元素,实例如下:

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

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

      

     

  • 相关阅读:
    [luogu p2482] [SDOI2010]猪国杀
    [luogu p2296] 寻找道路
    左右布局(备用复制)
    导出Excel
    流式布局 及 媒体查询
    echarts设置(持续更新)
    解决Vue中watch首次进入路由不触发的问题
    Math.random
    Vue的拖拽
    使的dialog上下左右居中(弹框居中)
  • 原文地址:https://www.cnblogs.com/Amy-world/p/9923747.html
Copyright © 2020-2023  润新知