六维教程

CSS 链接样式

网页里到处都是链接,但默认样式千篇一律,蓝色加下划线。给链接做样式,让它在页面里更醒目、更协调,是每个页面都要做的事。

链接的四种状态

链接有四种状态,对应四种伪类,用起来要区分清楚。

/* 未访问过的链接 */
a:link {
  color: #2980b9;
  text-decoration: none;
}

/* 已访问过的链接 */
a:visited {
  color: #8e44ad;
}

/* 鼠标悬停时 */
a:hover {
  color: #e67e22;
  text-decoration: underline;
}

/* 键盘选中或点击瞬间 */
a:active {
  color: #c0392b;
}

四种状态的顺序有讲究。:hover 要写在 :link:visited 后面,:active 要写在最后。顺序乱了,前面的规则会覆盖后面的,悬停效果就出不来。记法很简单,L-V-H-A。

去掉默认下划线

text-decoration: none 是导航栏的标配,去掉蓝色下划线,让链接融入整体设计。

.nav a {
  text-decoration: none;
  color: #2c3e50;
  transition: color 0.2s;
}
.nav a:hover {
  color: #3498db;
}

悬停时换个颜色,过渡动画让变化不那么生硬。

做成按钮样式的链接

链接本质是行内元素,想做得像按钮,要先转成块级或行内块级,再给背景和圆角。

<style>
  .btn-link {
    display: inline-block;
    padding: 8px 20px;
    background: #3498db;
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
    transition: background 0.2s;
  }
  .btn-link:hover {
    background: #2980b9;
  }
</style>
<a class="btn-link" href="#">立即购买</a>

inline-block 让链接既能设宽高间距,又能排在一行里。背景色配圆角,一个按钮就出来了。悬停变深色,点击感更强。

带图标的链接

链接前面放个小图标,常用伪元素实现,不用额外写一个 img 标签。具体写法在 CSS 伪元素 那篇有介绍。

.download::before {
  content: "↓ ";
  font-weight: bold;
}

可访问性提示

样式做得再好看,也要保证链接能识别。至少满足两点,链接文字要能说明去向,别只写”点这里”。悬停之外再给一个非颜色提示,比如下划线或图标,色弱用户才分得清状态。

小结

链接样式从四种状态入手,:link:visited:hover:active 顺序别乱。去掉默认下划线、转成按钮、加图标,都是常见需求。记住 L-V-H-A 顺序和 text-decoration,链接就能做到既好看又清楚。

上一篇
CSS 文本样式
下一篇
CSS 列表样式