Skip to content

链接(Link)

在 HTML 中,链接(<a> 标签) 是最常见的交互元素之一。浏览器默认的超链接样式通常是蓝色 + 下划线,可以使用 CSS 进行定制,以符合网站的设计风格。


1. 超链接(<a>)的状态

CSS 提供了 伪类选择器 来控制链接在不同状态下的样式:

伪类说明
a:link正常状态(未访问)
a:visited访问过的链接
a:hover鼠标悬停时
a:active正在点击时
a:focus聚焦or选中时

示例:为不同状态设置样式

css
a:link {
  color: blue; /* 未访问 */
}

a:visited {
  color: purple; /* 访问过 */
}

a:hover {
  color: red; /* 悬停时 */
  text-decoration: underline;
}

a:active {
  color: orange; /* 点击时 */
}

适用于 让链接更符合网站风格,并提供视觉反馈。


2. 移除默认的下划线

默认情况下,HTML 超链接有下划线。可以使用 text-decoration: none; 取消它:

css
a {
  text-decoration: none;
}

适用于 自定义按钮、导航栏等。


3. 自定义链接颜色

css
a {
  color: #ff5733;
}

适用于 让链接颜色与网站主题一致。


4. 让链接在悬停时改变颜色

css
a:hover {
  color: blue;
  text-decoration: underline;
}

增强用户交互体验!


5. 让链接在点击时改变颜色

css
a:active {
  color: red;
}

适用于 视觉反馈,告诉用户链接被点击。


6. 让访问过的链接变色

css
a:visited {
  color: purple;
}

适用于 让用户区分已访问和未访问的链接。


7. 让链接看起来像按钮

css
a {
  display: inline-block;
  padding: 10px 20px;
  background: #ff5733;
  color: white;
  text-decoration: none;
  border-radius: 5px;
}

a:hover {
  background: #c70039;
}

适用于 重要的链接,如“注册”、“购买”等。


8. 让链接具有动画效果

css
a {
  color: black;
  text-decoration: none;
  transition: color 0.3s ease;
}

a:hover {
  color: orange;
}

适用于 让网页更有动感。


9. 让链接有边框和阴影

css
a {
  display: inline-block;
  padding: 10px 20px;
  border: 2px solid #ff5733;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);
  text-decoration: none;
}

a:hover {
  border-color: blue;
  box-shadow: 3px 3px 10px rgba(0, 0, 255, 0.3);
}

适用于 让链接更加突出,如 Call-to-Action 按钮。


10. 让链接在新窗口打开

如果希望点击链接时在新窗口打开,需要在 HTML 里添加 target="_blank"

html
<a href="https://www.example.com" target="_blank">打开新窗口</a>

适用于 外部链接,不影响用户当前页面。


11. 让链接变成块级元素

默认情况下,链接是 inline 行内元素,不会占满整行。如果希望链接占满一行,可以使用 display: block;

css
a {
  display: block;
  padding: 10px;
  background: lightgray;
}

适用于 菜单项、导航栏等。


12. 让链接有图标

可以使用 CSS 伪元素 ::after::before 添加图标:

css
a::after {
  content: "🔗"; /* 添加小图标 */
}

适用于 提示用户这是一个超链接。


13. 让链接样式适用于多个元素

有时,你可能想让一个 divbutton 看起来像链接:

css
.button-link {
  display: inline-block;
  padding: 10px 20px;
  color: white;
  background: blue;
  text-decoration: none;
  cursor: pointer;
}

适用于 让非链接元素也能像链接一样工作。


14. 制作渐变色链接

css
a {
  background: linear-gradient(45deg, red, orange);
  -webkit-background-clip: text;
  color: transparent;
  text-decoration: none;
}

适用于 让链接有独特的视觉效果。


15. 使用 outline 控制焦点状态

当用户使用键盘(Tab 键)导航网页时,浏览器会自动为当前焦点的链接添加外边框。可以使用 outline 控制焦点样式:

css
a:focus {
  outline: 2px solid blue;
}

适用于 提高可访问性(Accessibility)。


16. 让链接支持 hover 变形

css
a {
  display: inline-block;
  text-decoration: none;
  padding: 10px 20px;
  background: #ff5733;
  color: white;
  border-radius: 5px;
  transition: transform 0.3s ease;
}

a:hover {
  transform: scale(1.1);
}

适用于 按钮、重要链接。


总结

1. 链接的状态伪类

CSS 伪类作用
a:link未访问的链接
a:visited访问过的链接
a:hover鼠标悬停时的链接
a:active点击时的链接

2. 主要样式

CSS 属性作用
text-decoration移除或添加下划线
color设置文字颜色
background设置背景颜色
border添加边框
padding添加内边距
transition添加动画效果
outline控制焦点状态
box-shadow添加阴影

适用于 让链接更符合设计需求,增强用户体验。

评论区

欢迎留言、补充或勘误。

xiaoba.blog