一、使用`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;
}