Html CSS趋势与命名类,id与破折号下划线?

Html CSS趋势与命名类,id与破折号下划线?,html,css,css-selectors,Html,Css,Css Selectors,我一直使用破折号作为css类和ID名称的分隔符: .about-us .car-pricing-guide 我见过一些网站使用多个下划线 此外,我还看到了两条破折号 .hero--title 我知道这是一个偏好的问题,但是有人能指出这类模式的文章或流程吗?是朝着某一特定的惯例发展,还是有一套人们似乎同意/遵循的流行惯例?双下划线遵循边界元法。它基本上是一种命名类的方法,以便以后用户更容易理解 BEM背后的指导原则似乎是在设计页面时,考虑可重用的小部件。这几乎是编写语义HTML的标准方法 在这

我一直使用破折号作为css类和ID名称的分隔符:

.about-us
.car-pricing-guide
我见过一些网站使用多个下划线

此外,我还看到了两条破折号

.hero--title

我知道这是一个偏好的问题,但是有人能指出这类模式的文章或流程吗?是朝着某一特定的惯例发展,还是有一套人们似乎同意/遵循的流行惯例?

双下划线遵循边界元法。它基本上是一种命名类的方法,以便以后用户更容易理解

BEM背后的指导原则似乎是在设计页面时,考虑可重用的小部件。这几乎是编写语义HTML的标准方法


在这里了解更多有关BEM的信息:

我大力提倡使用连字符,而且它似乎更为传统。很久以前,一些浏览器在类名和ID中不支持下划线,所以连字符是首选/标准化方法。即使是看CSS,你也会在任何地方看到连字符,比如边框颜色,那么为什么不坚持这个趋势呢

连字符还允许您利用|=属性等特性。它可以让你做这样漂亮的事情:

span[class|="uppercase"] { text-transform: uppercase; }
这导致了两种情况

<h1 class="uppercase-header">The Three Little Pigs</h1>

两者都获得了样式文本转换:大写

现在,我从来没有真正使用过这个选择器。。。但是如果我需要,我的代码已经准备好了


如果你仍然不相信连字符,这里有一些更好的例子说明为什么连字符是一个很好的标准:

让我补充一下,下划线不能将一行分隔成单词。因此,您至少可以在Windows中双击某个选择器,它将被选中,但某些选择器必须手动选择才能复制。当你需要大量复制时,下划线可以节省时间。

两个破折号是很不寻常的,不能说我见过。但是,连字符可能是最流行的。这是BEM conventionBlock元素修饰符。\u表示元素,-表示修改器。为了更好地理解,您可以参考此url@NikhileshKV,BEM是一个很好的reference@claudios是的,它使代码模块化。我经常使用它。在页面中没有写任何关于双下划线的内容。。!这里解释得更好!好吧,你需要在你的网站上浏览几页own@MarkWuji你只是引用了同样的东西。。。我认为从一开始就阅读,即首先阅读关键概念是明智的;
<h1 class="uppercase-header">The Three Little Pigs</h1>
<h2 class="uppercase-subheader">Chapter 1</h2>