有许多用于样式链接颜色的 css 示例。
html5boilerplate.com为链接提供了这样的 css 代码:
a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
对于大多数情况来说是否足够好?
或者也许存在更好的css代码来设置链接的颜色?
有许多用于样式链接颜色的 css 示例。
html5boilerplate.com为链接提供了这样的 css 代码:
a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
对于大多数情况来说是否足够好?
或者也许存在更好的css代码来设置链接的颜色?
在绝大多数情况下,这绝对足够了。
请记住,链接样式的正确顺序是:
a:link { color: #c00 } /* unvisited links */
a:visited { color: #0c0 } /* visited links */
a:hover, a:focus { color: #00c } /* user hovers, or focus */
a:active { color: #ccc } /* active links */
这outline
对您来说可能看起来“丑陋”,但这是一个非常重要的可访问性功能。如果您删除它 - 请注意提供一种替代方法来正确区分当前元素(更大/更粗的字体、高对比度背景等)
我总是重置浏览器之间可能不同的设置。
我还喜欢通过添加图像(类似于维基百科中的图像)来以不同方式标记指向外部网站的链接。
a,
a:link,
a:active,
a:visited,
a:hover {
color: #d30;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
/* Links to external websites */
a.external:before {
content: url(./pics/external.png);
}
如果您想确定您正在样式化链接(而不是不是链接的锚点),您应该使用a:link
而不是a
.
你可以a:active
在最后添加。在这里你有一个教程。
永远不要删除那个轮廓,或者至少只为 a:active 删除它。如果你对所有锚点都这样做,那么它也将被删除用于键盘导航的 a:focus。过度依赖悬停也是非常糟糕的,因为触摸屏上不存在悬停。
我喜欢让所有链接都易于与其他内容区分开来。这是我个人的偏好:
2016版
/* The order is important! Do not use fixed values like px! Always check contrast between text and background for accessibility! */
a { border-bottom: thin solid;
color: rgb(0,0,192);
font-weight: bolder;
text-decoration: none;
}
a:visited { color: rgb(160,0,160); }
a:active { color: rgb(192,0,0); }
a:active, a:focus, a:hover { border-bottom-width: medium; }
2015版
a { border-bottom: thin solid;
color: rgb(0,0,192);
font-weight: 700;
text-decoration: none;
}
a:visited { color: rgb(128,0,128); }
a:active { color: rgb(192,0,0); } /* :active MUST come after :visited */
a:active, a:focus, a:hover { border-bottom-width: medium; }
2014版
a { border-bottom: 1px solid;
color: rgb(0,0,166);
font-weight: 700;
text-decoration: none;
}
a:visited { color: rgb(122,0,122); }
a:active { color: rgb(166,0,0); } /* :active MUST come after :visited */
a:active, a:focus, a:hover { border-bottom: 3px solid; }
2013版
a { color: rgb(0,0,166);
font-weight: 700;
border-bottom: 1px dotted;
text-decoration: none;
}
a:visited { color: rgb(122,0,122); }
a:hover, a:focus, a:active { border-bottom: 2px solid; }
a:focus, a:active { color: rgb(166,0,0); }
我发现它总是很好添加
一个{大纲:无;}
因为某些浏览器会在您单击链接时为链接添加恼人的轮廓