教程集 www.jiaochengji.com
教程集 >  CSS教程  >  正文 CSS3禁止网页中文本被选中代码

CSS3禁止网页中文本被选中代码

发布时间:2019-10-31   编辑:jiaochengji.com
教程集为您提供CSS3禁止网页中文本被选中代码等资源,欢迎您收藏本站,我们将为您提供最新的CSS3禁止网页中文本被选中代码资源
现在可以直接使用CSS3禁止网页中文本被选中了,但只兼容Firefox/Chrome/Safari,IE10了,不过也是未来主流了,下面来看看。

浏览器支持

目前,只有Gecko和webkit支持该属性,包括基本上所有版本的Firefox/Chrome/Safari,IE10中也将支持该属性。当然,各个浏览器都必须加上私有前缀。Opera尚不支持。


或许你常常不希望用户在你的网站上选择文本,无论是否是出于版权的原因。通常大家会有js来实现,另一个方案就是,将-webkit-user-select 和-moz-user-select 的值设为none,这针对于移动用户,可能会很有用。
请谨慎使用这个属性:因为大部分用户是来查看信息的,他们可以复制并存储下来以备将来之用,所以这种方法既无用也无效。如果你禁用了复制粘贴功能,用户还是可以通过查看源文件来获取到他们想要的内容。

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy6693')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy6693>body {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

上面的代码兼容所有移动设备的浏览器,下面我们来看看关于user-select的一些介绍。
附:user-select的介绍
user-select是在css3 UI规范中新增的一个功能,用来控制内容的可选择性。
语法
user-select:value;
可选参数
auto——默认值,用户可以选中元素中的内容
none——用户不能选择元素中的任何内容
text——用户可以选择元素中的文本
element——文本可选,但仅限元素的边界内(只有IE和FF支持)
all——在编辑器内,如果双击/上下文点击发生在子元素上,改值的最高级祖先元素将被选中。
-moz-none——firefox私有,元素和子元素的文本将不可选,但是,子元素可以通过text重设回可选。

使用示例

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy9107')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy9107>

.selectDemo{
    background-color:#eee;
    padding:20px;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

如果想支持所有的我们可以

<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy1990')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy1990>

<script type="text/Javascript">document.oncontextmenu=function(e){return   false;};document.onselectstart=function(e){return   false;};</script><style>body{-moz-user-select:none;}</style>

加上这一句即可

总结

这个属性,在之前是被用来保护网站的内容,不被用户复制和转载,从而保护资讯的版权,但是这样却对普通用户的用户体验造成了伤害,而且,并不能真正的保护页面中的内容,这对前端开发人员来说,直接查看源代码就可以复制网页中的问题。
现在,HTML5蒸蒸日上,很多网站或者web app会使用到Drag and Drop技术,user-select正好在一些情境中可以用到。

您可能感兴趣的文章:
js 事件-禁止右键与文本选择
javascript禁止页面操作(右键、复制、F5刷新)等代码
js禁止页面复制与保存的方法
javascript禁止网页右键的方法
CSS3禁止网页中文本被选中代码
禁止复制粘贴截屏等的js代码
JS如何禁止选中文本
js禁止网页内容复制、选取、禁止右键菜单
禁止右键、禁选择、禁粘贴、禁shift、禁ctrl、禁alt的js代码
js禁止选择内容的实现代码

[关闭]
~ ~