【问题标题】:What's the point of the :link pseudo-class?:link 伪类有什么意义?
【发布时间】:2015-08-04 06:00:09
【问题描述】:

我了解:link 允许选择未访问的元素,并且我知道LoVe-HAte trick 可以记住放置各种链接伪类的顺序。但在实践中,我总是这样设置我的链接:

a {
    /* common styles for all links, regardless of state */
    /* this includes unvisited links, and thus a:link */
}
a:visited {
    /* specific styles for visited links */
}
a:hover {}
a:active {}

由于链接要么被访问,要么未被访问,这涵盖了所有可能的情况,我真的不明白 :link 伪类添加到表中的内容。

我错过了什么吗?

【问题讨论】:

    标签: html css css-selectors pseudo-class


    【解决方案1】:

    在某些情况下,您可能希望未访问的链接引起访问者的注意,尤其是在重要链接时。用的多吗?我不知道,我实际上还没有发现需要使用它。据我所知,我和你做的一样。

    但我想最终,可以选择单独设置这些链接的样式而不是没有它。

    我想我能想到的一个用例是词云(例如在带有标签的博客中),您希望未访问的链接获得比其他链接更大的字体。

    【讨论】:

    • 是的,也许 :link 伪类只是为了与 :visited 对称而引入的......我同意有这个选项很好,但你仍然可以实现同样的效果使用我的方法的事情:默认情况下将所有链接设置为醒目,然后为:visited链接覆盖它。所以总而言之,:link 伪类对我来说似乎毫无用处,我觉得这有点令人惊讶。
    【解决方案2】:

    a:link 选择器可让您在 <a> 标记上设置样式,这些标记实际上链接到某处。

    没有href 属性的裸<a> 标记通常用作文档中的标记;将位置设置为document.html#foo 将跳转到<a id="foo"> 在文档中的任何位置。毕竟,它被称为“锚”标签是有原因的。

    传统的 HTML 可能如下所示:

    <h2>Navigation</h2>
    <a href="#ch1">Chapter 1</a>
    
    ...
    
    <h3><a id="ch1">Chapter 1</a></h3>
    <p>It was the best of times...</p>
    

    随后的 HTML 标准允许您使用 document.html#thing 语法跳转到具有属性 id="thing" 的任何元素,但并非总是如此。

    【讨论】:

    • 哦,是的,这是有道理的,尽管(正如您所指出的)它不再很有用了。一种退化的伪类。 :) 谢谢。
    • 在传统的 HTML 中,命名锚点使用 name 属性。对于所有元素,id 属性是更现代的处理方式。
    猜你喜欢
    • 2013-01-04
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    • 2017-06-11
    • 2012-03-22
    • 1970-01-01
    相关资源
    最近更新 更多