命名CSS选择器时的最佳做法是什么?
SomeContainerContent
some_container_content
some-container-content
我在这里读到了关于堆栈溢出的其他类似问题,但答案中没有达成一致意见。我想知道是否有其他人有更多要补充。
答案 0 :(得分:29)
一般的想法是使用连字符。事实上,其他选项存在潜在的兼容性问题。
此外,CSS在内部使用连字符,例如first-child
。
虽然兼容性问题在现代浏览器中通常不是问题,但这就是标准的出现方式,我建议坚持使用它。如果你要偏离你会好的,但为什么要这么麻烦?
答案 1 :(得分:5)
.hyphens-for-multi-word-names
.underscores_for_pseudo_namespacing
结果:
.grid-system_push-100
\_________/ \______/
namespace object
命名空间和对象可以很容易地用于某种BEM实现。
.grid-slot { } /* block */
.grid-slot_size-100 { } /* block-specific modifier */
._size-100 /* generic modifier */
我的$ 0.02
答案 2 :(得分:2)
我真的认为这取决于你。但是,重要的是要保持一致。例如,我喜欢使用下划线表示类的ids和破折号。
答案 3 :(得分:1)
“在CSS中,标识符(包括选择器中的元素名称,类和ID)只能包含字符[a-zA-Z0-9]和ISO 10646字符U + 00A1和更高,加上连字符( - )和下划线(_);它们不能以数字或连字符后跟数字开头。标识符还可以包含转义字符和任何ISO 10646字符作为数字代码(参见下一项)。例如,标识符“B& ; W?“可以写成”B \& W \?“或”B \ 26 W \ 3F“。”
答案 4 :(得分:0)
这无关紧要,归结为您的个人品味。但是,对于一个项目,它应该是一致的!因此,如果已经存在css,请选择此样式设置的样式。
答案 5 :(得分:0)
我使用破折号( - )表示HTML变量的HTML / CSS和下划线。为我保持井井有条。
答案 6 :(得分:0)
我用破折号。可能是因为网络上的很多东西都是区分大小写的,而且我习惯在文件名中使用全小写等等。下划线时很难看到下划线,所以我也回避它们。
虽然看起来大多数人都是CamelCase: