Loading

css中的选择器

选择器

基本选择器

  1. 标签选择器:选择一类标签。 标签{}
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            h1 {
                color:rgb(218, 205, 88);
                background: #64a2f3;
                border-radius: 18px;
            }
            p {
                font-size: 20px;
            }
        </style>

    </head>
    <body>
        <h1>test1</h1>
        <h1>test2</h1>
        <p>test3</p>
    </body>
</html>
  1. 类选择器 class:选择所有class属性一致的标签,跨标签。 .类名{}
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            .main {
                color: aqua;
                background: #f06477;
            }
            .header {
                color: blue;
            }
        </style>

    </head>
    <body>
        <h1 class="main">test1</h1>
        <h1 class="header">test2</h1>
        <p class="main">test3</p>
    </body>
</html>
  1. id选择器:全局唯一。 #id名{}
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            .main {
                color: aqua;
                background: #f06477;
            }
            .header {
                color: blue;
            }
            #test {
                color: black;
            }
        </style>

    </head>
    <body>
        <h1 class="main" id="test">test1</h1>
        <h1 class="header">test2</h1>
        <p class="main">test3</p>
    </body>
</html>

优先级:id > class > 标签

层次选择器

  1. 后代选择器:在某个元素的后面所有几代的指定标签
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            /* body后的所有p标签 */
            body p {
                color: aqua;
            }
        </style>

    </head>
    <body>
        <p>p1</p>
        <p>p2</p>
        <p>
            <ul>
                <li>
                    <p>p3</p>
                </li>
                <li>
                    <p>p4</p>
                </li>
                <li>
                    <p>p5</p>
                </li>
            </ul>
        </p>
    </body>
</html>
  1. 子选择器:在某个元素后面的一代的指定标签
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            /* body后面的一代p标签 */
            body > p {
                color: aqua;
            }
        </style>

    </head>
    <body>
        <p>p1</p>
        <p>p2</p>
        <p>
            <ul>
                <li>
                    <p>p3</p>
                </li>
                <li>
                    <p>p4</p>
                </li>
                <li>
                    <p>p5</p>
                </li>
            </ul>
        </p>
    </body>
</html>
  1. 相邻兄弟选择器:和某一元素同一层的下一个指定标签
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            /* 和test同一层的下一个p标签 */
            .test + p {
                color: aqua;
            }
        </style>

    </head>
    <body>
        <p>p0</p>
        <p class="test">p1</p>
        <p>p2</p>
        <p>p7</p>
        <p>
            <ul>
                <li>
                    <p class="test">p3</p>
                    <p>p6</p>
                </li>
                <li>
                    <p>p4</p>
                </li>
                <li>
                    <p>p5</p>
                </li>
            </ul>
        </p>
    </body>
</html>
  1. 通用选择器:和某一元素同层的后面所有指定标签
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            /* 和test同一层的后面所有p标签 */
            .test ~ p {
                color: aqua;
            }
        </style>

    </head>
    <body>
        <p>p0</p>
        <p class="test">p1</p>
        <p>p2</p>
        <p>p7</p>
        <p>
            <ul>
                <li>
                    <p class="test">p3</p>
                    <p>p6</p>
                    <p>p8</p>
                </li>
                <li>
                    <p>p4</p>
                </li>
                <li>
                    <p>p5</p>
                </li>
            </ul>
        </p>
    </body>
</html>

结构伪类选择器

选择器中有冒号的是伪类选择器

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            /* ul的第一个子元素 */
            ul li:first-child {
                color: aqua;
            }
            /* ul的最后一个子元素 */
            ul li:last-child {
                color: azure;
            }
        </style>

    </head>
    <body>
        <p>p1</p>
        <p>p2</p>
        <p>p3</p>
        <p>
            <ul>
                <li>l1</li>
                <li>l2</li>
                <li>l3</li>
            </ul>
        </p>
    </body>
</html>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            /* 选中p1 */
            /* 选择当前p元素的父级元素body,
            再选择父级元素的第一个子元素,
            且该子元素是p元素才会生效 */
            p:nth-child(1) {
                color: blue;
            }
            /* 选择父元素下p元素的第二个 */
            p:nth-of-type(2) {
                color: blueviolet;
            }
        </style>

    </head>
    <body>
        <p>p1</p>
        <p>p2</p>
        <p>p3</p>
        <p>
            <ul>
                <li>l1</li>
                <li>l2</li>
                <li>l3</li>
            </ul>
        </p>
    </body>
</html>

属性选择器

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Title</title>

        <style>
            .demo a {
                float: left;
                display: block;
                height: 50px;
                width: 50px;
                border-radius: 10px;
                background: blue;
                text-align: center;
                color: gray;
                margin-right: 5px;
                font: bold 20px/50px Arial;
            }
            /* 选中标签a中有id的 */
            /* a[id] {
                background: yellow;
            } */
            /* 选中标签a中id为first的 */
            /* a[id=first] {
                font-size: 60px;
            } */
            /* 选中标签a中class含有link的 */
            /* a[class*="link"] {
                background: yellow;
            } */
            /* 选中标签a中href以https开头的 */
            /* a[href^=https] {
                background: yellow;
            } */
            /* 选中标签a中href以png结尾的 */
            a[href$=png] {
                background: yellow;
            }
        </style>

    </head>
    <body>
        <p class="demo">
            <a href="https://www.baidu.com" class="link item first" id="first">1</a>
            <a href="" class="link item second" target="_blank" title="test">2</a>
            <a href="img/1.png" class="link item">3</a>
            <a href="img/2.jpg" class="link item">4</a>
            <a href="img/3.png" class="link item">5</a>
            <a href="a.ppt" class="link item">6</a>
            <a href="a.xls" class="link item">7</a>
            <a href="a.doc" class="link item last">8</a>
        </p>
    </body>
</html>
posted @ 2020-08-11 15:59  Kinopio  阅读(122)  评论(0编辑  收藏  举报