【译】谨慎使用CSS中的波浪选择器_html/css_WEB-ITnose
程序员文章站
2022-05-28 13:22:57
...
原文: The tilde CSS selector, use carefully! 标签是个啥,不如直接给这些li标签加上 .not-important 来的简单直接。
最近我的一些项目都遇到了一些类似的样式问题。它们都错误地使用了波浪选择器,并造成了很多地方的CSS代码臃肿( CSS Bloat )。大家可能以前也都遇到或者使用过波浪选择器,毕竟它作为CSS选择器已经很长时间了, 甚至IE7都支持 。波浪选择器用来选择所有匹配到的兄弟元素。
一个例子
- Item 1
- Item 2
- Item 3
- Item 4
效果:
这里我们的波浪选择器匹配了 .something-important 的所有兄弟元素,item2,3,4。
所以问题在哪儿呢?
它太容易制造出脆弱的代码了。
我的经验里,使用波浪选择器一般都是通过type而不是class来选择兄弟元素的。这样会造成你不知道这个选择器写这儿到底是干嘛用的。上面这个例子我们就不知道 .something-important ~li 选择到的
通常来说多敲几个字给每个元素都加上class可以给未来的维护减少很多不必要的麻烦。
“在写代码的时候,永远假设最后一个维护你的代码是一个知道你家住在哪儿的沉默的精神病人。写点人读得懂的代码。—— John Woods ”
用武之地
待编辑
避免CSS代码臃肿
我认为这篇文章并不仅仅就是告诉大家避免使用波浪选择器,更多的是让大家知道遇到CSS的问题时不要从加上更多的CSS的代码开始。这从来都不是保持代码可维护性的方法。
推荐阅读
-
css3中关于伪类的使用_html/css_WEB-ITnose
-
关于css中overflow:hidden的使用_html/css_WEB-ITnose
-
关于css中overflow:hidden的使用_html/css_WEB-ITnose
-
css代码中的加号(+)相邻选择器的作用_html/css_WEB-ITnose
-
10_Android中通过HttpUrlConnection访问网络,Handler和多线程使用,读取网络html代码并显示在界面上,ScrollView组件的使用_html/css_WEB-ITnose
-
css3中matrix函数的使用_html/css_WEB-ITnose
-
【译】谨慎使用CSS中的波浪选择器_html/css_WEB-ITnose
-
使用css3背景渐变中的透明度来设置不同颜色的背景渐变_html/css_WEB-ITnose
-
HTML5关于上传API的一些使用(中)_html/css_WEB-ITnose
-
【译】谨慎使用CSS中的波浪选择器_html/css_WEB-ITnose