【问题标题】:Combining Pseudo-selectors in CSS?在 CSS 中结合伪选择器?
【发布时间】:2013-07-01 14:25:48
【问题描述】:

我的意思是,如果我需要,例如,悬停链接中的选定文本为红色,我可以在 CSS 样式中使用以下代码吗?

.abc:hover:selection{color:red}

<a href="123" class="abc">4567890</a>

当我选择它的一部分时,该链接会在我悬停时变成红色吗?这种伪类组合的语法是否正确?

【问题讨论】:

  • @David Thomas:我应该知道它是否正确
  • 如有疑问,请确认。如果它没有验证,那么它显然是错误的。
  • @cimmanon:问起来很简单 =)
  • 问SO比验证简单吗?对我来说毫无意义。
  • 这是我不得不对这个问题投反对票的少数情况之一,因为当提示测试提问者完全拒绝这样做时,然而我必须发布自己的答案无论如何,并否决现有答案,因为它是错误的。

标签: css css-selectors pseudo-class


【解决方案1】:
 .container:nth-last-child(2):not(:first-child) {
    background-color: red;
 }

【讨论】:

  • 请提供一些解释 - 仅代码的答案不一定有用。这如何回答这个问题?
【解决方案2】:

如果您在谈论伪类,那么可以,您可以按任意顺序组合它们。

除了在这种情况下,::selection 不是伪类,它不是 CSS1 或 CSS2 或任何当前规范的一部分的伪元素。这就是“伪选择器”一词的不足之处,因为它们是完全不同的两个东西。

正确的语法是:hover 使用单冒号,::selection 使用双冒号,并且与伪类不同,伪元素必须始终排在最后:

.abc:hover::selection{color:red}

即便如此,由于::selection 工作(或不工作)的方式,它不能保证在浏览器中实际产生效果。

【讨论】:

  • 但它可以结合起来,而且它是正确的方式。这就是我一直在寻找的
猜你喜欢
  • 2012-02-15
  • 1970-01-01
  • 1970-01-01
  • 2012-04-05
  • 1970-01-01
  • 2014-02-03
  • 2018-06-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多