如何使用 CSS 设置指示任意方向滚动的光标样式?


在进入主题之前,让我们尝试了解光标作为 UI 元素的重要性。我们知道用户在网站上交互的第一件事通常是光标,这就是为什么操纵光标样式和效果对于设计至关重要的原因,因为它极大地影响了整体的用户体验。

cursor 属性用于在我们将鼠标悬停在元素上时设置鼠标光标的显示样式。它应用于所有元素并且是可继承的,这意味着子元素也将具有与其父元素相同的鼠标光标。

  • 计算值可以是绝对值或指定的,具体取决于我们是否在属性值中使用 url。它具有离散动画样式。

  • 这通过为光标图像提供一个或多个用逗号分隔的 url 来指定,但必须具有后备关键字值。

  • 在设置样式时,浏览器尝试加载 url 指定的图像,如果加载图像时出现某些错误,则光标将回退并使用关键字值。

或者,我们也可以在 url 后提供两个用空格分隔的数字,它们定义了光标热点相对于图像左上角的 x 和 y 坐标。

现在让我们简要了解一下这些值中的每一个。

  • url(s) − 这是一个可选值,包含我们希望作为光标的图像文件的源位置。如果我们有多个光标要用于回退,则可以通过指定 url 的逗号分隔列表来提供多个图像作为光标。

  • X 和 Y − 这些也是可选的数值,指向正在指向的光标内的确切位置;光标热点。这些数字实际上指的是像素大小,它们被限制在光标图像的范围内,并且相对于图像的左上角,对应于“0 0”。

  • 关键字值 − 这是此属性的必填值,它指定了我们将要使用哪种类型的鼠标光标,或者在我们的图像加载失败时将使用哪种鼠标光标。有许多关键字值可供我们使用,例如 auto、default、none、help、wait、crosshair 等等。

使用 all-scroll 属性

在这一点上,我们了解了 cursor 属性及其可能的值。因此,出现的问题是,哪个关键字值将把光标设置为任意方向滚动。问题的答案是“all-scroll”。all-scroll 属性值用于我们希望能够向任意方向滚动的元素。

示例

下面给出了一个使用 all-scroll 关键字值将光标样式设置为任意方向滚动的示例。

<!DOCTYPE html>
<html>
<head>
   <style>
      #all-scrollValue {
         color: brown;
         cursor: all-scroll;
      }
   </style>
</head>
<body>
   <h1>Using all scroll property to change cursor</h1>
   <h2 id="all-scrollValue">
      Hover over this text to see the cursor change to any-direction scroll.
   </h2>
</body>
</html>

使用 move 属性值

根据 bug 275174,all-cursor 属性值在 Windows 中的作用与 move 属性值相同。因此,Windows 用户也可以使用 move 属性值来设置任意方向滚动。

示例

下面给出了使用 move 属性值设置任意方向滚动光标的示例。

<!DOCTYPE html>
<html>
<head>
   <style>
      #all-scrollValue {
         color: brown;
         cursor: all-scroll;
      }
      #movePropertyValue {
         color: crimson;
         cursor: move;
      }
   </style>
</head>
<body>
   <h1>Using all scroll property to change cursor</h1>
   <h2 id="all-scrollValue">
      Hover over this text to see the cursor change to any-direction scroll.
   </h2>
   <h2 id="movePropertyValue">
      Hover over to see the effect of move property value.
   </h2>
</body>
</html>

结论

总之,CSS 使设置指示任意方向滚动的自定义光标样式变得容易。通过使用“cursor”的 CSS 属性,您可以自定义网站光标的外观,并确保它准确地反映用户行为,例如向任意方向滚动。只需几行代码,您就可以为您的用户创造直观的体验。

更新于:2023-02-27

439 次查看

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告