是否有任何 CSS 选择器(CSS3+ 都可以)在元素仅出现一次时将某些样式应用于元素?
例如,以下 CSS 规则:
border: 1px solid black;
Run Code Online (Sandbox Code Playgroud)
...仅当HTML 中仅出现一次.info时才适用于.info 。
所以,
<p class="info">This would have a border because there is only one</p>
Run Code Online (Sandbox Code Playgroud)
和,
<p class="info">This would not have a border because there are two</p>
<p class="info">And neither would this</p>
Run Code Online (Sandbox Code Playgroud)
我猜我必须以编程方式应用一个附加类,例如:.single-occurrence或使用 Javascript 计算出现次数?
编辑:
让我澄清一些事情。
当我提到 Javascript 作为我正在尝试做的事情的解决方案时 - 这并不意味着我将使用它。我尽量避免使用 JS 来处理任何与行为无关的事情。所以我不需要 Javascript 答案,这非常容易完成 - 我的问题是关于 CSS 的。
另外,对于那些感到困惑的人:页面上有时只有一个类的原因是因为我使用的实际类是: search-result。有时只有一个结果。但仅仅因为只有一个并不意味着该项目不能属于名为search-result 的对象类的一部分。从语义上(和逻辑上)来说,当然可以存在一个项目的一类。有时,我认为人们应该更多地考虑语义,而不是应用一揽子规则。