zoukankan      html  css  js  c++  java
  • css:css3新特性(属性选择器、结构伪类选择器)

    1、属性选择器

    (1)属性选择器可以不借助于类或者ID进行选择

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style>
                input[value]{
                    background-color: red;
                }
            </style>
        </head>
        <body>
            <form>
                <input type="text"/>
                <input type="text" value="请输入密码" />
            </form>
        </body>
    </html>

    效果:

     (2)选择属性=值的元素

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style>
                input[type=text]{
                    background-color: red;
                }
            </style>
        </head>
        <body>
            <form>
                <input type="text" value="请输入用户名"/><br>
                <input type="password" value="请输入密码" />
            </form>
        </body>
    </html>

    效果:

     (3)选择属性值开头/结尾的某些元素:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style>
                div[class^=ima]{
                    color: red;
                }
            </style>
        </head>
        <body>
            <div class="imags1">1</div>
            <div class="imags2">2</div>
            <div class="tupian1">3</div>
            <div class="tupian2">4</div>
        </body>
    </html>

     以。。。。结尾:

        <style>
                div[class$=pian2]{
                    color: red;
                }
            </style>

    2、结构伪类选择器

    主要根据文档的结构来选择元素,常用于根据父级选择里面的子元素

    (1)选择第一个

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style>
                ul :first-child{
                    color: red;
                }
            </style>
        </head>
        <body>
            <ul>
                <li>1</li>
                <li>2</li>
                <li>3</li>
                <li>4</li>
                <li>5</li>
                <li>6</li>
                <li>7</li>
                <li>8</li>
            </ul>
        </body>
    </html>

     注意选择器的元素(ul)后面要添加空格

    (2)选择第n个

      <style>
                ul :nth-child(3){
                    color: red;
                }
            </style>

     (3)偶数孩子

        <style>
                ul :nth-child(even){
                    color: red;
                }
            </style>
    <style>
                ul :nth-child(2n){
                    color: red;
                }
            </style>

     (4)奇数孩子

         <style>
                ul :nth-child(odd){
                    color: red;
                }
            </style>
         <style>
                ul :nth-child(2n+1){
                    color: red;
                }
            </style>

     (5)从第三个孩子元素开始:

       <style>
                ul :nth-child(n+3){
                    color: red;
                }
            </style>

     (6)前三个孩子元素:

          <style>
                ul :nth-child(-n+3){
                    color: red;
                }
            </style>

    3、nth-child与nth-of-type

    (1)nth-child

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style>
                section div:nth-child(1) {
                    color: red;
                }
            </style>
        </head>
        <body>
            <section>
                <p>1</p>
                <div>2</div>
                <div>3</div>
                <div>4</div>
            </section>
        </body>
    </html>

     (2)nth-of-type

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style>
                section div:nth-of-type(1) {
                    color: red;
                }
            </style>
        </head>
        <body>
            <section>
                <p>1</p>
                <div>2</div>
                <div>3</div>
                <div>4</div>
            </section>
        </body>
    </html>

    •  nth-child:先对元素进行排列,选出第一个,但是元素的类型不对
    • nth-of-type:先找到所有的div,再选出第一个div元素

    4、伪元素选择器

    可以利用css创建新标签元素,而不需要html标签,从而简化html的结构

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style>
                div{
                     200px;
                    height: 300px;
                    background-color: yellowgreen;
                }
                div::before{
                    content: 'before';
                }
                div::after{
                    content: 'after';
                }
            </style>
        </head>
        <body>
            <div>div</div>
        </body>
    </html>

    •  before和after属于行内元素
    • 新创建的这个元素在文档树中是找不到的,称为伪元素
    • before和after必须有content属性
    • 权重为1
    • 应用:可以做字体图标,不用再在父盒子里面嵌套子盒子
  • 相关阅读:
    线程池和进程池
    初识数据库
    线程q
    event事件
    死锁和递归锁
    信号量
    PythonStudy——线程中的几种消息队列
    PythonStudy——GIL Global Interpreter Lock 全局解释器锁
    PythonStudy——异步回调
    PythonStudy——日志模块 logging
  • 原文地址:https://www.cnblogs.com/zhai1997/p/13279394.html
Copyright © 2011-2022 走看看