在命名css选择器时使用大写,短划线或下划线

时间:2010-02-26 22:25:11

标签: css css-selectors

命名CSS选择器时的最佳做法是什么?

SomeContainerContent
some_container_content
some-container-content

我在这里读到了关于堆栈溢出的其他类似问题,但答案中没有达成一致意见。我想知道是否有其他人有更多要补充。

7 个答案:

答案 0 :(得分:29)

一般的想法是使用连字符。事实上,其他选项存在潜在的兼容性问题。

  • 某些(授予的,旧的,NS4类型)浏览器中的类名或ID中不允许使用下划线。
  • CSS规范没有规定浏览器应该如何处理大小写,所以使用camelCase可以解决一个模糊的解释。

此外,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:

poll on what people use