zoukankan      html  css  js  c++  java
  • css选择器, first-child,first-of-type

    选择制定的classname

    var li = $('.list-tab-group li.active');  
    <ul class="list-tab-group">
         <li class="acive"></li>
         <li></li>
         <li></li>
    </ul>

    1.通用元素选择器 选中所有的元素

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
             /*去掉块与块之间的间隙*/
            *{
                margin: 0;
                padding: 0;
            }       
        </style>
    </head>
    <body>
                <div style="height: 50px;color: orangered;background: cadetblue;">测试通用元素匹配</div>
                <div style="color: orangered;">测试通用元素匹配</div>
                <p style="color: orangered;">测试通用元素匹配</p>
                <span style="color: orangered;">测试通用元素匹配</span>
    </body>
    </html>

    效果都被 * 选中,去掉间隙。之前和之后

      

    2.元素选择器 选择所有相同的元素

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*2.元素选择器,对选中 相同 的元素设置相同的样式 ex:选各种所有div元素*/
            div{
                background: green;
            }
        </style>
    </head>
    <body>
            <!--1.通用元素选择器 * 匹配任何元素-->
                <div>测试通用元素匹配</div>
                <div>测试爸爸
                    <div>测试通用元素匹配</div>
                </div>
    </body>
    </html>

    效果,所有的div元素被选中,设置背景色green

    3.class选择器 可以同时选取 不同 的元素

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*3.class选择器 可以选取 不同 的元素*/
            .tycs {
                height: 50px;
                width: 140px;
                background: deeppink;
            }
        </style>
    </head>
    <body>
                <div class="tycs">测试通用元素匹配1</div>
                <p class="tycs">测试通用元素匹配2</p>
                <span class="tycs">测试通用元素匹配3</span>
    </body>
    </html>

    效果 所有的class同名被选中设置属性,最后一个是span元素不支持设置宽高

    4.id选择器 id唯一 选中指定的元素

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*4.id选择器 id是唯一的 选中指定的某个元素*/
            #id_1{
                height: 50px;
                width: 140px;
                background: lightpink;
            }
        </style>
    </head>
    <body>
                <div class="tycs">测试通用元素匹配1</div>
                <div id="id_1">测试通用元素匹配</div>
                <p class="tycs">测试通用元素匹配2</p>
                <span class="tycs">测试通用元素匹配3</span>
    </body>
    </html>

    效果  只有id=id_1的被选中设置属性

    5.群组选择器 组员之间用逗号","隔开

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*群组选择器 组员之间用逗号","隔开*/
            div,span,p{
                background: olivedrab;
            }
        </style>
    </head>
    <body>
        <div>第一</div>
        <span>第二</span>
        <p>第三</p>
        <p>第四</p>
    </body>
    </html>

    效果 所有的组员被选中,设置背景 span特殊 由自身的内容撑开宽度和高度,所以。。。

     6.相邻选择器 用加好+连接 只选中最后的邻居

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*6.相邻选择器 用加好+连接 只选中最后的邻居*/
            div+div+span{
                background: red;
            }
        </style>
    </head>
    <body>
        <div>1</div>
        <div>2</div>
        <span>3</span>
        <p>4</p>
    </body>
    </html>

    效果 选中邻居span

    7.兄弟选择器 用 ~ 连接

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*7.兄弟选择器 用 ~ 连接*/
            div~div~span{
                background: darkslategray;
            }
        </style>
    </head>
    <body>
        <div>1</div>
        <div>2</div>
        <span>3</span>
        <p>4</p>
    </body>
    </html>

    效果 div~div~span 最终span才是大兄弟啊 兄弟可以很多 如果在3后面 在加个<span>3.1</span> 3.1也会被选中的

    8.子代选择器 用 > 连接 (可以连接儿子的儿子...)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            div>div{
                background: forestgreen;
            }
        </style>
    </head>
    <body>
                <div>测试通用元素匹配</div>
                <div>测试爸爸
                    <div>爸爸的儿子</div>
                </div>
    </body>
    </html>

    效果 看!真的是儿子,是谁的啊?绿?

    9.后代选择器 空格连接  和子代选择器类似

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*9.后代选择器 空格连接*/
            div div{
                background: darkgreen;
            }
        </style>
    </head>
    <body>
                <div>测试通用元素匹配</div>
                <div>测试爸爸
                    <div><span>sunzi</span>爸爸的儿子</div>
                </div>
    </body>
    </html>

    效果 

    10.伪类选择器  : 前面可以指定名字什么的

    • 注意 这设置这四个属性 是必须有顺序的 LoVe HAte 爱恨,大写的字母就是顺序
    • 四个元素可以分开写,如果想要设置相同的属性可以写成 群组选择器
    • 元素中加入这个属性 是去除链接的下划线 text-decoration: none;

    - `:link` 匹配所有未被点击的链接
    - `:visited` 匹配所有已被点击的链接
    - `:hover ` 匹配鼠标悬停其上的元素
    - `:active` 匹配鼠标已经在其上按下但是还没有释放的元素

    • - `hover`拓展
    • - ```
    • .box:hover{} 改变元素本身
    • ```
    • - ```
    • .box:hover p{} 改变元素下面的p子元素
    • ```
    • - `cursor`鼠标移入时以何种状态显示
    • - `defult` 通常是一个箭头
    • - `wait`光标指示正忙
    • - `help`光标指示帮助
    • - `pointer` 小手

    一:基本选择器优先级排序(从高到低)

    - `#id`{}

    - `.class`{}

    - `tagName{}

    - `*`{}

    二:特殊情况

    - 级别相同的选择器:后面的样式会覆盖前面的(后来居上)

    三:复杂后代选择器

    - 比高低顺序依次是:`id` 选择器 `class`选择器 `tanName{}`
    - `id`选择器个数不相等,`id`个数越多的优先级越高,后面不用比
    - `id`选择器个数相等,则看`class`个数,多的优先级高,后面不用比
    - `class`个数相等,再看`tagName`个数
    - `#wrap ul li .list{}`和`.wrap ul li #list{}`优先级一样

    四:选择器使用原则:准确的选中元素,并且不影响其他元素

    first-child 选中父类下的第一个元素,(不管它长得啥样.哪怕不是亲生的,是喊的第一个儿子,就选它,就是这么任性)
    first-of-type 指定子类的分类(按名字,武功,法术)中第一个元素, (选出在该行业最拔尖的,哪怕是比懒)

    又皮了一下。。happy

  • 相关阅读:
    mingw32g++.exe: *: No such file or directory
    在Code:Blocks使用MinGW编译wxWidgets库
    能挂广告的博客大集合
    内存映射文件技术
    叉乘法求任意多边形面积
    C++中,如何使double不用科学计数法表示
    error: extra qualification 以及 error: no matching function for call to
    一个简单的C#委托小例子
    一个简单的C#多播委托的小例子
    控件生命周期 岁月无情
  • 原文地址:https://www.cnblogs.com/tangpg/p/8267658.html
Copyright © 2011-2022 走看看