zoukankan      html  css  js  c++  java
  • css选择器

    今天整理一下css的选择器,灵活使用css选择器可以减少不少无用工,如写不必要的js代码。

    很多时候可以用css做到的就尽量不用用js,原因:

    1、css代码速度肯定是js快

    2、js个人觉得要考虑的逻辑情况会比较多。

    3、出bug的可能性也少很多,出的都是兼容问题。

    我觉得实用(别的貌似不实用就不介绍),css选择器可以分为

    1、最常用id、class、'*'(通配符)、'>'(子类选择器)、','(群组选择器) 、'空格'(后代选择器)、:hover。

    2、偶尔用的:before、:after、:first-child、:last-child、:nth-child()、:nth-last-child()。

    3、比较少用的:target(突出锚点貌似也不实用)、:checked、:disabled、~(通用兄弟选择器)、+(相邻兄弟选择器)。

    这是需要注意的:

    '空格'(后代选择器):.classA a{color:#fff;} 意思是classA里面的所有所有a标签都{color:#fff;}

    '>'(子类选择器): .classA > a{color:#fff;} 意思是classA的所有a(儿子)标签都{color:#fff;},而孙子a标签并不会{color:#fff;}

    <style type="text/css">
    li{background-color: #fff;}
    .classA > li{background-color: yellow;}
    </style>
    <body>
    <ul class="classA">
        <li>111
            <ul> 
                <li>222</li>
                <li>222</li>
            </ul>
        </li>
        <li>111</li>
        <li>111</li>
        <li>111</li>
    </ul>
    </body>
    

    这就是代码效果

     接下来让我们说说第三类,这一类组合在配合一些html标签使用往往可以用于替代js,减少一些js代码量。

    :disabled

    <style type="text/css">
    input[type="text"]:disabled
    { 
    background-color: red;
    color: #fff;
    }
    </style>
    <input type="text" value="禁止操作" disabled>
    

    效果如下  

    :checked 这个就是比较简单就是当被选中时的样式呗!如checkbox,radio。

    ~(通用兄弟选择器) 只要是兄弟就会起作用。

    <style type="text/css">
    .a1{background-color: yellow;}
    .a1 ~ .a2{background-color: red;}
    </style>
    <span class="a1">a1</span>
    <span class="a2">a2</span>
    <span class="a2">a2</span>
    

    效果如下:

    +(相邻兄弟选择器) 只有相邻的兄弟会起作用。

    <style type="text/css">
    .a1{background-color: yellow;}
    .a1 + .a2{background-color: red;}
    </style>
    <span class="a1">a1</span>
    <span class="a2">a2</span>
    <span class="a2">a2</span>

    下面这个我就是组合了第三类的

    代码如下

    <style type="text/css">
    .sexSelect{display: none;}
    .sexSelect + span{display: inline-block;  40px; height: 40px; line-height: 40px; border-radius: 100%; border: 1px solid #eee; background-color: #fff; text-align: center; cursor: pointer; }
    .sexSelectbox:hover span{font-weight: bold;}
    .sexSelect:checked + span{border: 1px solid #eee; background-color: yellow;font-weight: bold;}
    </style>
    <body>
    <label class="sexSelectbox"><input class="sexSelect" type="radio" name="sex" checked><span>男</span></label>
    <label class="sexSelectbox"><input class="sexSelect" type="radio" name="sex"><span>女</span></label>
    </body>
    

      

     

  • 相关阅读:
    线性Softmax分类器实战
    线性SVM分类器实战
    今日心得:读书
    今日心得:正能量
    Excel导出POI
    mysql数据库操作命令
    git常用命令
    list对象 利用Map去除对象中字段的重复
    SpringMVC 利用POI的Excel导出
    利用ajax进行页面加载进行信息展示时,一直不提加载,转圈,不反回问题。
  • 原文地址:https://www.cnblogs.com/matthew9298-Begin20160224/p/6340674.html
Copyright © 2011-2022 走看看