HTML5与CSS3基础语法自学教程(十八)

本文首发于【前端课湛】微信公众号。可以在微信里搜索【前端课湛】关注,第一时间看文章!

导读:本小节讲解与 <a> 元素有关的伪类选择器,主要包含动态伪类选择器和目标伪类选择器两种。这两种伪类选择器的主要应用场景都是与 <a> 元素有关的,并且通过这两种伪类选择器可以实现比较丰富的效果。

动态伪类选择器

动态伪类选择器可以划分为链接中锚点的伪类选择器和用户行为的伪类选择器,具体如下表所示:

伪类选择器类型描述
e:link链接锚点伪类选择器匹配的 e 元素,定义了超链接并且未被访问过
e:visited链接锚点伪类选择器匹配的 e 元素,定义了超链接并且已被访问过
e:active用户行为伪类选择器匹配的 e 元素,定义了超链接并且被激活
e:hover用户行为伪类选择器匹配的e元素,定义了超链接并且用户鼠标悬停在链接文本内容上
e:focus用户行为伪类选择器匹配的 e 元素,定义了超链接并且获得焦点

如下示例代码展示了动态伪类选择器在 <a> 元素上应用:

a:link { color: #FF0000 }         /* 未访问的链接 */
a:visited { color: #00FF00 }    /* 已访问的链接 */
a:hover { color: #FF00FF }        /* 鼠标移动到链接上 */
a:active { color: #0000FF }        /* 选定的链接 */

动态伪类选择器并不是只能应用于 <a> 元素,其他 HTML 元素同样可以使用动态伪类选择器。例如在 HTML 页面中的 <button> 按钮元素可以配合 :hover 伪类选择器来使用,如下示例代码所示:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>动态伪类选择器</title>
  <style>
    /* 鼠标移动到链接上 */
    button:hover {
      background-color: lightblue;
    }
  </style>
</head>

<body>
  <button>这是一个按钮</button>
</body>

</html>

上述示例代码运行效果如下图所示:

6d0e3d517ceeb742cd75f47f88c9fbc8.gif

02-01.gif

注意:在触摸屏上 :hover 基本不可用。不同的浏览器上:hover 伪类表现不同。

目标伪类选择器

目标伪类选择器指的是 CSS 中的 :target 伪类选择器,该伪类选择器用来设置 <a> 元素锚点功能中的目标元素的样式。如下示例代码展示了 :target 伪类选择器的用法:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>目标伪类选择器</title>
  <style>
    p:target {
      background-color: gold;
    }

    /* 在目标元素中增加一个伪元素*/
    p:target::before {
      font: 70% sans-serif;
      content: "►";
      color: limegreen;
      margin-right: .25em;
    }

    /*在目标元素中使用italic样式*/
    p:target i {
      color: red;
    }
  </style>
</head>

<body>
  <h3>Table of Contents</h3>
  <ol>
    <li><a href="#p1">Jump to the first paragraph!</a></li>
    <li><a href="#p2">Jump to the second paragraph!</a></li>
    <li><a href="#nowhere">This link goes nowhere,
        because the target doesn't exist.</a></li>
  </ol>

  <h3>My Fun Article</h3>
  <p id="p1">You can target <i>this paragraph</i> using a
    URL fragment. Click on the link above to try out!</p>
  <p id="p2">This is <i>another paragraph</i>, also accessible
    from the links above. Isn't that delightful?</p>
</body>

</html>

上述示例代码运行效果如下图所示:

fa731a2aa3d76822c0c46d8358011496.gif
02-02.gif

总结

本小节讲解了有关动态伪类选择器和目标伪类选择器的用法。这两种伪类选择器虽然主要的应用场景是与 <a> 元素有关,但并不是只能和 <a> 元素配合使用。

预告:下一节,我们将讲解图像的相关内容。

如要转载本文,请先加作者微信(2080954535,与 QQ 同号),获得转载许可。原创不易,请尊重作者劳动!

d825bd5f1b5efe8e89e44bda37b77d44.jpeg
作者二维码.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值