摘要:一使用在菜单上应用取消应用边框我们通常的做法是先给每个菜单项设置边框,然后在设置最后一个菜单的边框为零不过不要这么做,使用伪类来达到同样的效果当然,你也可以使用或者,但是更加清晰,具有可读性二使用选择项目注第一个子元素的
一、使用 :not() 在菜单上应用/取消应用边框
我们通常的做法是先给每个菜单项设置边框,然后在设置最后一个菜单的边框为零
/* add border */ .nav li { border-right: 1px solid #666; } //* remove border */ .nav li:last-child { border-right: none; }
不过不要这么做,使用 :not() 伪类来达到同样的效果:
.nav li:not(:last-child) { border-right: 1px solid #666; }
当然,你也可以使用 .nav li + li 或者 .nav li:first-child ~ li ,但是 :not() 更加清晰,具有可读性
.nav li + li{ border-left:1px solid #666;} /*.nav li:first-child ~ li{ border-left:1px solid #fff; }*/二、使用:nth-child(n)选择项目
(注:第一个子元素的下标是 1)
:nth-child(3) 表示选择列表中的第三个元素
:nth-child(2n)表示列表中的偶数标签,即选择第2、第4、第6……标签
:nth-child(2n-1) 表示选择列表中的奇数标签,即选择 第1、第3、第5、第7……标签
:nth-child(n+3) 表示选择列表中的标签从第3个开始到最后(>=3)
:nth-child(-n+3) 表示选择列表中的标签从0到3,即小于3的标签(<=3)
:nth-last-child(3) 表示选择列表中的倒数第3个标签
:nth-of-type(n) 匹配属于父元素的特定类型的第 N 个子元素的每个元素
三、隐藏没有静音、自动播放的影片video[autoplay]:not(:muted){ display:none; }
再次,利用了:not()的优点
四、IE 条件注释IE 中的条件注释对 IE 的版本和 IE 非 IE 有优秀的区分能力,是 Web 开发中常用的hack方法,能对 IE 系列产品进行多带带的 HTML 代码处理