在现在开发的项目中,有一些设计到技术问题的,不想被用户选中复制,原先需要监听右键等进行判断,现在发现css3中有user-select特性,一行代码就能解决问题。
user-select属性是css3新增的一个属性,它可以用来控制内容的可选择性,设置或检索是否允许用户选中文本,适用于除替换元素外的所有元素。
可以设置以下的属性值:
auto:默认值,文本将根据浏览器的默认属性进行选择;
none:可以设置用户不能选择元素中的任何内容 ;
text:设置用户可以选择元素中的文本 ;
element:设置文本可选,但选择范围受元素边界的约束(该属性值只被IE和FF支持)
all:当所有内容作为一个整体时可以被选择。如果双击或者在上下文上点击发生在子元素上,则该子元素向上回溯的最高祖先元素将被选中。简单来说就是:目标元素将被整体选中,不能只选中一部分,浏览器会自动选中整个元素里的内容。
-moz-none:firefox私有的属性值,设置元素和子元素的文本将不可选;但是,子元素可以通过text重新设置为可选。
说明:
因为IE6-9不支持user-select属性,想要实现user-select:none,即:禁止文本被选中,禁止复制的效果,可以使用标签属性 onselectstart="return false;" 来实现;同时Safari和Chrome也支持该标签属性。
网友评论