CSS 链接

不同的链接可以有不同的样式。


链接样式

链接的样式,可以用任何CSS属性(如颜色,字体,背景等)。

特别的链接,可以有不同的样式,这取决于他们是什么状态。

这四个链接状态是:

  • a:link - 正常,未访问过的链接
  • a:visited - 用户已访问过的链接
  • a:hover - 当用户鼠标放在链接上时
  • a:active - 链接被点击的那一刻
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <style>
    a:link {
      color: #000000;
    }
    /* 未访问链接*/

    a:visited {
      color: #00FF00;
    }
    /* 已访问链接 */

    a:hover {
      color: #FF00FF;
    }
    /* 鼠标移动到链接上 */

    a:active {
      color: #0000FF;
    }
    /* 鼠标点击时 */
  </style>
</head>
<body>
  <p><b><a href="/css/" target="_blank">这是一个链接</a></b></p>
  <p><b>注意:</b> a:hover 必须在 a:link 和 a:visited 之后,需要严格按顺序才能看到效果。</p>
  <p><b>注意:</b> a:active 必须在 a:hover 之后。</p>
</body>
</html>

尝试一下 »

当设置为若干链路状态的样式,也有一些顺序规则:

  • a:hover 必须跟在 a:link 和 a:visited后面
  • a:active 必须跟在 a:hover后面

常见的链接样式

根据上述链接的颜色变化的例子,看它是在什么状态。

让我们通过一些其他常见的方式转到链接样式:

文本修饰

text-decoration 属性主要用于删除链接中的下划线:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <style>
    a:link {
      text-decoration: none;
    }
    /* unvisited link */

    a:visited {
      text-decoration: none;
    }
    /* visited link */

    a:hover {
      text-decoration: underline;
    }
    /* mouse over link */

    a:active {
      text-decoration: underline;
    }
    /* selected link */
  </style>
</head>

<body>
  <p><b><a href="/css/" target="_blank">This is a link</a></b></p>
  <p><b>注意:</b> hover必须在:link和 a:visited之后定义才有效.</p>
  <p><b>注意:</b>active必须在hover之后定义是有效的.</p>
</body>
</html>

尝试一下 »

背景颜色

背景颜色属性指定链接背景色:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <style>
    a:link {
      background-color: #B2FF99;
    }
    /* 未访问链接 */

    a:visited {
      background-color: #FFFF85;
    }
    /* 已访问链接 */

    a:hover {
      background-color: #FF704D;
    }
    /* 鼠标移动到链接上 */

    a:active {
      background-color: #FF704D;
    }
    /* 鼠标点击时 */
  </style>
</head>

<body>
  <p><b><a href="/css/" target="_blank">这是一个链接</a></b></p>
  <p><b>注意:</b> hover必须在:link和 a:visited之后定义才有效.</p>
  <p><b>注意:</b>active必须在hover之后定义是有效的.</p>
</body>
</html>

尝试一下 »


更多实例

添加不同样式的超链接 - 这个例子演示了如何为超链接添加其他样式。

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <style>
    a.one:link {
      color: #ff0000;
    }

    a.one:visited {
      color: #0000ff;
    }

    a.one:hover {
      color: #ffcc00;
    }

    a.two:link {
      color: #ff0000;
    }

    a.two:visited {
      color: #0000ff;
    }

    a.two:hover {
      font-size: 150%;
    }

    a.three:link {
      color: #ff0000;
    }

    a.three:visited {
      color: #0000ff;
    }

    a.three:hover {
      background: #66ff66;
    }

    a.four:link {
      color: #ff0000;
    }

    a.four:visited {
      color: #0000ff;
    }

    a.four:hover {
      font-family: monospace;
    }

    a.five:link {
      color: #ff0000;
      text-decoration: none;
    }

    a.five:visited {
      color: #0000ff;
      text-decoration: none;
    }

    a.five:hover {
      text-decoration: underline;
    }
  </style>
</head>

<body>
  <p>将鼠标移至链接上改变样式.</p>

  <p><b><a class="one" href="/css/" target="_blank">这个链接改变颜色</a></b></p>
  <p><b><a class="two" href="/css/" target="_blank">这个链接改变字体大小</a></b></p>
  <p><b><a class="three" href="/css/" target="_blank">这个链接改变背景颜色</a></b></p>
  <p><b><a class="four" href="/css/" target="_blank">这个链接改变字体类型</a></b></p>
  <p><b><a class="five" href="/css/" target="_blank">这个链接改变文字修饰</a></b></p>
</body>

</html>

尝试一下 »

高级 - 创建链接框 - 这个例子演示了一个更高级的例子,我们结合若干CSS属性显示为方框。

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <style>
    a:link,
    a:visited {
      display: block;
      font-weight: bold;
      color: #FFFFFF;
      background-color: #98bf21;
      width: 120px;
      text-align: center;
      padding: 4px;
      text-decoration: none;
    }

    a:hover,
    a:active {
      background-color: #7A991A;
    }
  </style>
</head>

<body>
  <a href="/css/" target="_blank">这是一个链接</a>
</body>
</html>

尝试一下 »