使用带有样式链接的IE8时出现意外的CSS结果

使用带有样式链接的IE8时出现意外的CSS结果,css,Css,我已经使用CSS设置了链接样式,如下例所示 这在Chrome中可以正常工作,但在IE8中我遇到了以下问题: 当您第一次访问页面时,所有链接都没有预期的下划线 如果我悬停在它们上面,它们会像预期的那样加下划线 如果访问链接,下划线将按预期消失,但是如果我再次将鼠标悬停在链接上,则无法再获得下划线 有什么想法吗 谢谢 a:link {color:#0064cc;font-family:Arial;font-size:13px;text-decoration:none !important;}

我已经使用CSS设置了链接样式,如下例所示

这在Chrome中可以正常工作,但在IE8中我遇到了以下问题:

当您第一次访问页面时,所有链接都没有预期的下划线

如果我悬停在它们上面,它们会像预期的那样加下划线

如果访问链接,下划线将按预期消失,但是如果我再次将鼠标悬停在链接上,则无法再获得下划线

有什么想法吗

谢谢

a:link {color:#0064cc;font-family:Arial;font-size:13px;text-decoration:none !important;}     
a:active {color:#0064cc;font-family:Arial;font-size:13px;text-decoration:none !important;}     
a:hover {color:#0064cc;font-family:Arial;font-size:13px;text-decoration:underline !important;}  
a:visited {color:#0064cc;font-family:Arial;font-size:13px;text-decoration:none !important;}  

你的问题来自于你的链接没有设置样式。您应该先使用
:link
,然后使用
:visted
,然后使用
:hover
,然后使用
:active
来设置样式,以获得一致的跨浏览器结果

此外,应用于
:link
的任何样式都不需要重新应用于
:visted
:hover
:active
,除非您希望使用其他值覆盖它。例如,当您为
:link
声明
文本装饰:none
时,您不需要将其放入任何其他定义中,除了
:hover
,您希望将其覆盖为
none
。因为除了
:hover
之外的所有样式都是相同的,所以您可以在这里绕过LVHA顺序:

a:link, a:visited, a:active {
    color: #0064cc;
    font-family: Arial;
    font-size: 13px;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
希望这有帮助

编辑
尽管您的问题与您对
的使用无关!重要信息
,通常最好避免使用它。它导致了一些非常非语义的CSS。最好对CSS选择器的应用顺序有一个全面的了解(这并不像你想象的那么简单!)。查看MDN以了解更多信息。

您的问题源于您的链接没有设置样式。您应该先使用
:link
,然后使用
:visted
,然后使用
:hover
,然后使用
:active
来设置样式,以获得一致的跨浏览器结果

此外,应用于
:link
的任何样式都不需要重新应用于
:visted
:hover
:active
,除非您希望使用其他值覆盖它。例如,当您为
:link
声明
文本装饰:none
时,您不需要将其放入任何其他定义中,除了
:hover
,您希望将其覆盖为
none
。因为除了
:hover
之外的所有样式都是相同的,所以您可以在这里绕过LVHA顺序:

a:link, a:visited, a:active {
    color: #0064cc;
    font-family: Arial;
    font-size: 13px;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
希望这有帮助

编辑
尽管您的问题与您对
的使用无关!重要信息
,通常最好避免使用它。它导致了一些非常非语义的CSS。最好对CSS选择器的应用顺序有一个全面的了解(这并不像你想象的那么简单!)。查看MDN以了解更多信息。

尝试按正确顺序列出不同的选择器

a:hover
必须位于
a:link
a:visted
a:active
必须在
a:hover

另外,您不应该使用
!重要信息
。这可能会在以后给您带来问题


Src:

尝试按正确顺序列出不同的选择器

a:hover
必须位于
a:link
a:visted
a:active
必须在
a:hover

另外,您不应该使用
!重要信息
。这可能会在以后给您带来问题


Src:

只需了解CSS选择器的特殊性,然后重新排列样式规则:


并尽量避免
!重要信息
就像魔鬼避免十字架一样。

只要阅读一下CSS选择器的特殊性,然后重新排列样式规则:


并尽量避免
!重要信息
就像魔鬼避开十字架一样。

尝试在属性列表的末尾放置一个:悬停行(在a:visted之后)不要使用
!重要信息
这不是!重要相关信息,请参见下面@theftprevention的答案。请在属性列表的末尾放置一个:悬停行(在a:visited之后)不要使用
!重要信息
这不是!重要的相关信息,请参见下面@theftprevention的答案。你是对的,非常感谢,没有意识到订单的重要性!是的,我知道上面的建议,我们正计划以不同的方式设计它们,所以只需准备:)你是对的,非常感谢,没有意识到订单的重要性!是的,我知道上面的建议,我们正计划以不同的方式设计它们,因此只需准备基础:)