在CSS中,cursor属性用于定义鼠标指针悬停在元素上时显示的样式,通过合理设置该属性,可以让用户快速识别元素的可交互类型,提升页面的易用性。

cursor属性的基本语法
cursor属性的语法格式非常简单,直接为元素设置对应的取值即可,基本写法如下:
/* 基础语法 */
选择器 {
cursor: 取值;
}该属性可以作用于所有HTML元素,既可以全局设置,也可以针对特定元素单独调整。
常用可选值分类解析
cursor的可选值非常多,按照使用场景可以分为以下几类:
1. 通用交互类
auto:默认值,浏览器根据当前上下文自动决定指针样式default:默认箭头指针,通常对应不可交互的普通元素pointer:手形指针,一般用于链接、可点击的按钮等元素,提示用户该元素可以点击wait:等待样式,通常是沙漏或转圈,提示用户程序正在处理,暂时无法操作help:帮助样式,通常是箭头加问号,提示用户该元素有额外帮助信息
2. 操作调整类
move:移动样式,提示用户可以拖动该元素改变位置resize相关值:包括e-resize(向右调整)、w-resize(向左调整)、n-resize(向上调整)、s-resize(向下调整)、ne-resize(右上调整)、nw-resize(左上调整)、se-resize(右下调整)、sw-resize(左下调整),通常用于可调整尺寸的元素边框col-resize:列调整样式,提示可以水平调整列宽row-resize:行调整样式,提示可以垂直调整行高
3. 文本编辑类
text:文本选择样式,通常是I形指针,提示用户可以选中文本vertical-text:垂直文本选择样式,用于竖排文本的选择场景copy:复制样式,提示拖动元素时会执行复制操作alias:别名样式,提示会创建某个元素的快捷方式
4. 自定义图片类
除了预设的关键字取值,cursor还支持自定义图片作为指针样式,语法如下:
/* 自定义指针,支持多格式备用,最后必须加通用关键字兜底 */
.element {
cursor: url('custom-cursor.png'), pointer;
}注意自定义图片的尺寸建议不超过32x32像素,否则部分浏览器会忽略该设置,同时必须设置兜底的关键字取值,避免图片加载失败时指针样式异常。
实际使用示例
以下是一个常见的使用场景示例,为不同类型的元素设置合适的cursor样式:
/* 链接使用手形指针 */
a {
cursor: pointer;
}
/* 可拖动卡片使用移动样式 */
.draggable-card {
cursor: move;
}
/* 可调整宽度的侧边栏使用水平调整样式 */
.sidebar {
cursor: e-resize;
}
/* 文本区域使用文本选择样式 */
.text-area {
cursor: text;
}注意事项
- 不要滥用cursor属性,只有需要给用户明确交互提示时才设置,避免干扰用户正常操作
- 自定义指针图片要注意兼容性,优先使用png等通用格式,同时设置兜底关键字
- 部分取值在不同操作系统和浏览器中的显示效果可能略有差异,测试时需要覆盖主流环境