css3 新加选择器 排除选择器 :not()

 

css :not()排除函数

css:not()函数用来排除选择,not(x),其中的x为css选择器,但是x不能是not选择器,也就是说:not()排除选择器不能嵌套使用。

css:not()排除选择器使用

.sibcont{

    background:#f1f1f1;

    border:1px solid #bababa;

    margin:20px;

    padding:20px;

}

.sibcont ul{

    margin:0;

    padding:0;

    list-style:none;

}

.sibcont ul li{

    color:#C91010;

    font-size:13px;

    line-height:26px;

}

//not选择器

.sibcont ul li:not(:first-child){

    color:#0C58A7;

}

 

<div class="sibcont">

    <ul>

        <li>妹子前端</li>

        <li>妹纸前端</li>

        <li>mooshine前端</li>

        <li>not()选择器</li>

    </ul>

</div>

效果如下:

notselector.png

我们使用css :not()排除选择器,排除了第一个子元素li,把剩下的li的颜色设置为蓝色。你可以要说我们可以直接使用:first-child来设置第一个li不就能实现了吗,这话不假,这个demo只是介绍:not()函数语法而已。

css:not()函数用在自定义按钮上

.mmbtn{

    display:inline-block;

    font-size: 13px;

    line-height:28px;

    padding:0 1.2em;

    color:#fff;

    text-decoration: none;

    border:none;

}

.mmbtn:not(.disabled){

    background:#07A725;

}

.mmbtn:not(.disabled):active{

    background:#06801C;

}

.mmbtn + .mmbtn{margin-left:12px;}

.disabled{

    background:#353535;

    cursor:default;

}

 

<div class="sibcont">

    <a href="javascript:;" class="mmbtn">按钮</a>

    <a href="javascript:;" class="mmbtn">取消</a>

    <a href="javascript:;" class="disabled mmbtn">确定</a>

</div>

效果如下:

notbutton.png

这才是:not()函数的用途,这里disabled样式的按钮定义为置灰不可用的,使用not定义可用按钮的颜色,使用diabled定义不可用按钮的颜色,这样diabled样式可以写在mmbtn样式后面,也可写在前面,active伪类也使用not()函数去除disabled样式的active状态。这里用了相邻元素的选择器,如果你不明白,可以点击这里查看css +相邻元素选择器

上面的代码使用了active的伪类,截图看不真着,你可以点击这里查看css :not()按钮

css:not()多个否定条件的使用

:not()函数不能嵌套,但是可以并列使用

.sibcont ul li{

    color:#C91010;

    font-size:13px;

    line-height:26px;

}

.sibcont ul li:not(:first-child):not(:last-child){

    color:#0C58A7;

}

not级联使用的效果如下:

cssnot级联.png

通过css :not()级联,排除了第一个li,最后一个li,只有中间两个li的内容是蓝色的。

css:not()兼容性

notcompat.png

css:not()函数属于css3新定义的函数,所以要到IE9才能支持,兼容性也是十分良好的。

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值