当鼠标移到表格中的一行时,将光标移到手


201

当鼠标移到a <tr>中时,如何更改光标指针<table>

<table class="sortable" border-style:>
  <tr>
    <th class="tname">Name</th><th class="tage">Age</th>
  </tr>
  <tr><td class="tname">Jennifer</td><td class="tage">24</td></tr>
  <tr><td class="tname">Kate</td><td class="tage">36</td></tr>
  <tr><td class="tname">David</td><td class="tage">25</td></tr>
  <tr><td class="tname">Mark</td><td class="tage">40</td></tr>
</table>

有关交互式代码段,请查看我的答案
fmagno

Answers:


350

您实际上可以使用CSS做到这一点。

.sortable tr {
    cursor: pointer;
}

21
没有的话,这将完美地工作:hovercursor定义当鼠标悬停在其上时光标将变为的内容。
詹姆斯·蒙塔涅

3
您是否有机会修改此答案以删除不需要的内容:hover?这个问题在2年后仍然引起关注,如果接受的答案没有建议:hover不必要地使用,那就太好了。我认为这会导致对工作方式的误解,cursor并暗示:hover需要更改光标。
詹姆斯·蒙塔涅

203

我搜索了一些引导样式,发现了这一点:

[role=button]{cursor:pointer}

因此,我想您可以通过以下方式获得想要的东西:

<span role="button">hi</span>

对于自荐爱好者来说很好,但是这个问题不涉及任何前端框架,所以我不明白为什么这个答案与这个问题相关(即使答案很好)
Greco Jonathan

截至2018年6月6日,这是@Hooli,现在是搜索“悬停时指向指针的引导更改图标”时的最高结果。
BrianHVB

1
@OlivierBoissé刚刚测试过,它绝对可以与BS 4配合使用
Gabe Hiemstra,

1
重要提示:要添加role="button"时不要添加style="cursor:pointer;"。首先,您的元素取决于CSS在其他地方定义(并且在其他地方没有被覆盖),最重要的是,您滥用role属性,仅仅是因为大多数用户不需要它。请注意,大多数屏幕阅读器都允许遍历[role=button]元素,从而使受Web访问能力困扰的用户能够快速浏览所有页面按钮。不必让他们必须遍历表的每一行才能到达页脚链接!



17

我将此添加到我的style.css中以管理光标选项:

.cursor-pointer{cursor: pointer;}
.cursor-croshair{cursor: crosshair;}
.cursor-eresize{cursor: e-resize;}
.cursor-move{cursor: move;}

1
如果您沿途引入错别字,则不好(请参阅“ croshair”)
观察者,

12

为了与IE <6兼容,请按以下顺序使用此样式:

.sortable:hover {
    cursor: pointer;
    cursor: hand;
}

但是请记住IE <7 :hover仅支持带<a>元素的伪类。


10

使用样式cursor: pointer;在CSS你想要的光标来改变的元素。

在您的情况下,您可以使用(在.css文件中):

.sortable {
    cursor: pointer;
}

9

使用CSS 光标属性,如下所示:

<table class="sortable">
  <tr>
    <th class="tname">Name</th><th class="tage">Age</th>
  </tr>
  <tr style="cursor: pointer;"><td class="tname">Jennifer</td><td class="tage">24</td></tr>
  <tr><td class="tname">Kate</td><td class="tage">36</td></tr>
  <tr><td class="tname">David</td><td class="tage">25</td></tr>
  <tr><td class="tname">Mark</td><td class="tage">40</td></tr>
</table>

当然,您应该将样式放入CSS文件并将其应用于类。


4

使用css

table tr:hover{cursor:pointer;} /* For all tables*/
table.sortable tr:hover{cursor:pointer;} /* only for this one*/

3

对于一个标准来说,上述解决方案是可行的,但是如果您使用的是数据表,则必须覆盖默认的datatatables.css设置,并将以下代码添加到自定义css中,在row-select下面的代码中,是我在数据表上添加的类如html所示。

table.row-select.dataTable tbody td
{
cursor: pointer;    
}

而且您的html如下所示:

<table datatable="" dt-options="dtOptions1" dt-columns="dtColumns1" class="table table-striped table-bordered table-hover row-select"  id="datatable"></table>

以上解决方案是什么?
Kmeixner '16

2

内联样式的示例:

<table>
  <tr> <td style="cursor: pointer;">mouse me over: pointer</td> </tr>
  <tr> <td style="cursor: wait;">mouse me over: wait</td> </tr>
  <tr> <td style="cursor: zoom-in;">mouse me over: zoom-in</td> </tr>
</table>

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.