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;

}
相关推荐
sTone873754 分钟前
QuickJS 的核心概念和核心 API
前端·c++
coding随想6 分钟前
揭秘前端开发的隐藏武器:DOM元素尺寸全解析!掌握这三大“尺子”,轻松征服响应式布局
前端
OpenTiny社区6 分钟前
用Performance面板做前端性能优化让我上瘾!
前端·性能优化
复苏季风9 分钟前
v-for什么时候使用index,什么是时候用uuid当key
前端·vue.js
小高00710 分钟前
🔍Vue 隐藏神技巧:99% 开发者没用过,却能让代码简洁 50%
前端·javascript·vue.js
用户500937683903911 分钟前
使用无头浏览器Playwright解决Web打印生成PDF的问题
前端
uhakadotcom12 分钟前
开源一个AI导航站工具-jobleap4u
前端·面试·github
阿聪_12 分钟前
tsconfig.json strict属性配置false会有什么响
前端
艾小码12 分钟前
React Hooks时代:抛弃Class,拥抱函数式组件与状态管理
前端·javascript·react.js
用户500937683903913 分钟前
前端无预览静默打印实现:web-print-pdf npm包与打印专家的完美协作
前端