css控制页面文字不能被选中user-select:none;

现象:html中可能有些地方不想让用户复制文字,或是用a标签做了个点击按钮,点快的时候文字会被选中,很丑,这个时候可以使用下面的方案禁止文字选中。

原因:鼠标点快了文字会被选中。
解决方案:不同的浏览器设置的内容不一样,user-select不是一个W3C的标准,浏览器的支持不完成,需要对不同的浏览器进行调整。
 1 body{
 2 
 3 -moz-user-select:none;/*火狐*/
 4 
 5 -webkit-user-select:none;/*webkit浏览器*/
 6 
 7 -ms-user-select:none;/*IE10*/
 8 
 9 -khtml-user-select:none;/*早期浏览器*/
10 
11 user-select:none;
12 
13 }

 

user-select有2个值(none表示不能选中文本,text表示可以选择文本)

IE6-9还没发现相关的CSS属性

1 //IE6-9
2 
3 document.body.onselectstart=document.body.ondrag=function(){
4 
5 returnfalse;
6 
7 }

 扩展:

1.阻止冒泡:e.cancelBubble=true

                    e.stopPropagation()

2.阻止默认:e.preventDefault()

                    return false;  

 

举个栗子:在做APP时经常用到下面的~~
1 html,body{
2       -webkit-touch-callout:none ;
3       -webkit-text-size-adjust:none ;
4       -webkit-tap-highlight-color:transparent ;
5       -webkit-user-select:none ;
6 }

 

posted @ 2017-12-02 17:09  blackatall  阅读(280)  评论(0编辑  收藏  举报