做移动端项目的时候产品提了一个长按文字复制的功能,第一反应是这个不是Webview自带的功能吗?
打开APP自己试了下,发现果然无法长按复制,后来发现是因为公共CSS文件中设置了 user-select:none ,之所以设置该属性是因为html中可能有些地方不想让用户复制文字,或是用a标签做了个点击按钮,点快的时候文字会被选中,很丑,这个时候可以使用下面的方案禁止文字选中。比如常见的鼠标点快了文字会被选中并且出现难看的色块。
user-select 属性共有四个值,分别为:
none:文本不能被选择
text:可以选择文本
all:当所有内容作为一个整体时可以被选择。如果双击或者在 上下文上点击子元素,那么被选择的部分将是以该子元素 向上回溯的最高祖先元素。
element:可以选择文本,但选择范围受元素边界的约束
本文只做简单记录和描述,如有表述不准确之处,欢迎指正,欢迎补充,感谢阅读。