id 和 class 可以与 html 元素同名吗?

Can the id and a class have the same name of an html element?

CSS 允许我可以有一个 class 叫做“.header”,以及“.main”、“.footer”、“.aside”等等。 . ID 也一样。理论上,我可以有 3 个名称几乎“相同”的选择器,例如“article”、“.article”和“#article”。我可以对所有元素执行相同的操作,包括一个名为“.html”的 class 和一个名为“#body”的 ID,等等

对我来说,如果我看到 DOT,我知道那是一个 class,如果我看到 HASH,我知道那是一个 ID,所以对我来说没有混淆,但这是否违背了命名约定?

是的,你绝对可以。如果您是唯一一个从事该项目的人,并且这对您来说很直观,请继续,没问题。

但是当与更大的团队合作时,通常使用本质上更具描述性的 ID 和 类 是有意义的。例如,在浏览样式表时,.left-primary-sidebar 会比 .aside 告诉我更多关于元素的信息。

您的命名选择绝对有效

命名惯例可能因公司而异,因此如果您是唯一一个处理代码库的人,您可以设置自己的惯例。