1

如果我们在选择器中保留标签名称。

例如:

#divMainContentBody { … }

.spanImportant { … }

这最大限度地减少了在样式表和标记之间切换的需要,因为 ID 和类已经告诉您它所指的元素类型。


在@Guffa 的回答之后更新:

替代文字

我在本书中也发现了这个建议http://answers.oreilly.com/topic/647-how-to-write-efficient-css-selectors/

不限定 ID 选择器

Because there is only one element in the page with a given ID, there’s

无需添加额外的限定符。例如,DIV #toc 是不必要的,应简化为 #toc。

不要限定类选择器

Instead of qualifying class selectors for specific tags, extend

特定于用例的类名。例如,将 LI .chapter 更改为 .li-chapter,或者更好的是 .list-chapter。

4

2 回答 2

5

在此为标识符添加前缀称为匈牙利表示法,用于被认为对其使用至关重要的标识符方面。

在大多数情况下,我认为元素类型的重要性不足以使其成为 CSS 中的标识符。如果名称选择得当,您应该已经能够从中确定重要信息。

如果元素很重要,您可以在选择器中使用它,而不是将其放在标识符中。这样选择器实际上只能与该元素一起使用:

div#MainContentBody { ... }

span.Important { ... }
于 2010-04-17T10:48:46.550 回答
2

在我看来,这可能不是最佳实践,因为使用与位置相关的样式或将 CSS “趋势”为基于位置的模式(即“这只能用于跨度”、“这仅用于 div” ) 强制您在 HTML 元素和 CSS 类之间创建 1:1 的关系。

CSS 类被恰当地命名是因为——就像在 OO 编程中一样——你可以让你的 CSS 类相互继承。为此,您更好的方法是保持有意义的命名约定(正如您已经建议的那样),但编写模块化且可以扩展的类。

这样做的结果是,您可以以多种不同的方式和位置使用一个类,而不必不断地覆盖样式表中的行为。这使您的样式更可预测,并且您的 CSS 更易于维护。

在http://wiki.github.com/stubbornella/oocssSlideShare上阅读更多相关信息。

于 2010-04-17T10:51:05.950 回答