代码之家  ›  专栏  ›  技术社区  ›  Isley Aardvark

为什么要麻烦“lvha”链接样式中的“l”?

  •  8
  • Isley Aardvark  · 技术社区  · 15 年前

    当按该顺序(:link,:visited,:hover,:active)时,“a:link”伪类是否与“a”冗余?为什么要这样做:

    a:link {color: blue;}
    a:visited {color: purple;}
    a:hover {color: red;}
    a:active {color: yellow;}
    

    当你可以把这个放在:

    a {color: blue;}
    a:visited {color: purple;}
    a:hover {color: red;}
    a:active {color: yellow;}
    

    我问是因为第一个例子是我看到的最常见的lvha顺序。第二个版本具有相同的特异性,因此其功能相同。当链接状态改变时,是否只是一个组织上的事情来明确什么在改变?我错过了什么?

    3 回复  |  直到 13 年前
        1
  •  18
  •   BoltClock    13 年前

    并非所有定位标记都必须具有 href 属性,所以它们不是所有链接。大概是 :link 伪类不适用于没有 HREF .

        2
  •  4
  •   Gumbo    15 年前

    这个 pseudo-classes :link and :visited 仅用于链接( A 元素 href 属性):

    • :link伪类适用于尚未访问的链接。
    • :visited伪类在用户访问链接后应用。

    [艾斯]

    文档语言决定哪些元素是超链接源锚定。例如,在HTML4中,链接伪类应用于具有“href”属性的元素。

    但是 pseudo-classes :hover , :active and :focus 不仅用于链接,还可以应用于其他元素,如 input textarea .

    所以要正确,只选择 实际上是链接的元素,您需要使用 a:link . 如果只选择悬停的链接,则需要使用 a:link:hover 而不仅仅是 a:hover .

        3
  •  2
  •   Sofahamster    15 年前

    根据 W3C specification :

    :link伪类适用于尚未访问的链接。

    :link允许您设置未访问链接的样式,而不影响其他链接样式。

    推荐文章