css 禁止用户选中元素

一、使用`user-select`属性

1. `user-select: none;`

可以直接应用于特定的元素,阻止用户选中该元素的文本内容。

css 复制代码
.disabled-element {

  user-select: none;

}

然后在 HTML 中,将这个类应用到需要禁止选中的元素上

html 复制代码
<p class="disabled-element">这段文本不能被选中。</p>

2. 还可以使用`all`值来禁止选中元素及其子元素的文本

`.parent-element`的直接子元素不会被选中,但如果其子元素设置了`user-select`为其他值,可能会覆盖父元素的设置。

css 复制代码
.parent-element {

  user-select: none;

}

.parent-element * {

  user-select: inherit;

}

二、使用其他方式间接实现

1. `pointer-events`

通过设置元素的`pointer-events`属性为`none`,可以阻止鼠标事件,间接实现不能选中的效果,但这也会阻止其他鼠标交互,如点击等。

css 复制代码
.blocked-element {

  pointer-events: none;

}

2. 对于一些特定的标签

如`input`、`textarea`等,可以设置`readonly`或`disabled`属性来阻止用户编辑和选中内容,但这会改变元素的外观和行为。

css 复制代码
input[readonly],

textarea[readonly] {

  -webkit-user-select: none;

  -moz-user-select: none;

  -ms-user-select: none;

  user-select: none;

}
相关推荐
RONIN1 分钟前
vue组件、组件生命周期、组件分离模块化
前端·vue.js
小强19882 分钟前
HTML5语义化标签:从`div`到`article`与`section`的进化之路
前端
RONIN2 分钟前
vue开发环境与基础语法、计算属性、侦听属性
前端·vue.js
WayneYang9 分钟前
JavaScript ES6+ (ES2015~ES2024) 全特性整理
前端·javascript
逆光如雪10 分钟前
移动端border-left 和 width:1px,同样写1px为什么粗细不同?
前端·css
千寻girling11 分钟前
被内推的面试 , 第一次
java·前端·python·面试·职场和发展·typescript·node.js
JustNow_Man23 分钟前
Bun 常用命令速查清单(TypeScript 编译篇)
前端·javascript·typescript
anyup30 分钟前
uni-app 全能日历组件,支持农历、酒店预订、打卡签到、价格日历多种场景
前端·前端框架·uni-app
|晴 天|1 小时前
从零打造现代化个人博客:Vue 3 + TypeScript + Element Plus 完整实战
javascript·css·chrome·typescript·html5·webstorm
果然1231 小时前
Vue 3 Composition API 最佳实践:从项目实战中汲取的经验
前端