如何解决html页面文字无法被选中,进而复制粘贴复用
在使用vue-admin系统的时候,有时候比较懒想复制页面的文字测试一下某某功能,突然发现鼠标无法选中文字,进行复制。那么问题来了,为何无法选中?
问题描述:在使用vue-admin系统的时候,有时候比较懒想复制页面的文字测试一下某某功能,突然发现鼠标无法选中文字,进行复制。那么问题来了,为何无法选中?
原因:css3 UI规范中新增的一个功能user-select,用来控制内容的可选择性,当前被设置成了页面文字不可选中
介绍:
user-select:值
auto——默认值,用户可以选中元素中的内容
none——用户不能选择元素中的任何内容
text——用户可以选择元素中的文本
element——文本可选,但仅限元素的边界内(只有IE和FF支持)
all——在编辑器内,如果双击/上下文点击发生在子元素上,该元素的最高级祖先元素将被选中。
-moz-none——firefox私有,元素和子元素的文本将不可选,但是input输入框中的文字除外(IE浏览器下是通过onselectstart="javascript:return false;"事件来实现该功能的)
而我们把值设置成了none,所有无法选中
解决方案:
在全局css文件里设置user-select:text就行了,如下:
div{
-webkit-user-select: text;
-moz-user-select: text;
-o-user-select: text;
user-select: text;
}
就此解决问题
三、结语
这个属性,在之前是被用来保护网站的内容,不被用户复制和转载,从而保护资讯的版权,但是这样却对普通用户的用户体验造成了伤害,而且,并不能真正的保护页面中的内容,通过查看源代码其实也可以复制。。。
现在,HTML5蒸蒸日上,很多网站或者web app会使用到Drag and Drop技术,user-select正好在一些情境中可以用到。
更多推荐
所有评论(0)