我有一个列表,并且有一个点击处理程序:

<ul>
  <li>foo</li>
  <li>goo</li>
</ul>

如何将鼠标指针更改为手指针(如悬停在按钮上)?现在,当我将鼠标悬停在列表项上时,指针变成了文本选择指针。


当前回答

对于基本手符号:

Try

cursor: pointer 

如果您想要一个手形符号,如拖动某个项目并将其放下,请尝试:

cursor: grab

其他回答

所有其他响应都建议使用标准CSS指针,但有两种方法:

应用CSS属性cursor:pointer;到元素。(这是光标悬停在按钮上时的默认样式。)应用CSS属性cursor:url(pointer.png);为指针使用自定义图形。如果您希望确保用户体验在所有平台上都是相同的(而不是让浏览器/OS决定指针光标的外观),这可能更可取。注意,如果找不到图像,可以添加回退选项,包括辅助url或任何其他选项,即光标:url(pointer.png,fallball.png,pointer);

当然,这些可以通过以下方式应用于列表项:li{cursor:pointer;},作为class.class{curator:pointer:},或者作为每个元素style=“cursor:ppointer;”的style属性的值。

Use:

li:hover {
    cursor: pointer;
}

可以在此处查看当前HTML规范的其他有效值(哪只手不是)。

使用HTML黑客

注意:不建议这样做,因为这被认为是不好的做法

将内容包装在包含href属性的锚定标记中,无需显式应用游标:指针;具有锚点财产副作用的属性(用CSS修改):

<a href=“#”style=“text-decoration:initial;color:inital;”><div>这是一种不好的做法,但它有效</分区></a>

我认为在JavaScript可用时只显示手/指针光标是明智的。因此,人们不会觉得自己可以点击不可点击的东西。

为了实现这一点,您可以使用JavaScript库jQuery向元素添加CSS,如下所示

$("li").css({"cursor":"pointer"});

或者将其直接链接到单击处理程序。

或者当modernizer与<html class=“no js”>结合使用时,CSS将如下所示:

.js li { cursor: pointer; }

您可以使用以下选项之一:

li:hover
{
 cursor: pointer;
}

or

li
{
 cursor: pointer;
}

工作示例1:

li:悬停{光标:指针;}<ul><li>食品</li><li>巴</li></ul>

工作示例2:

锂{光标:指针;}<ul><li>食品</li><li>巴</li></ul>