这是一些标记的示例:
<div class="document">
<div class="main">
<div class="title" />
<div class="description />
</div>
<div class="sections">
<div class="section">
<div class="title" />
<div class="description" />
</div>
<div class="section">
<div class="title" />
<div class="description" />
</div>
</div>
</div>
在我的样式表中,我的规则可能如下所示:
.document .main .title { ... }
.document .sections .section .description { ... }
我喜欢这个。这种方法对我来说一直很有效,我认为越来越具体的选择器可以很清楚地知道什么是什么(几乎就像阅读一个句子一样)。
然而,最近有人告诉我这种方法很糟糕,我应该这样做:
<div class="document">
<div class="main">
<div class="mainTitle" />
<div class="mainDescription />
</div>
<div class="sections">
<div class="section">
<div class="sectionTitle" />
<div class="sectionDescription" />
</div>
<div class="section">
<div class="sectionTitle" />
<div class="sectionDescription" />
</div>
</div>
</div>
原因是它避免了类“标题”所指的任何歧义。
我很好奇这里的人是怎么想的?我的方法不好(即令人困惑、有问题)吗?有没有首选的方式来格式化复杂标记的 css?