在css中,可以利用user-select属性来实现禁止复制文章内容效果,只需给文本元素添加“user-select:none;”样式即可。user-select属性用于设置或检索是否允许用户选中文本,当该属性的值设置为“none”时可让文本元素无法被鼠标选取,进而可实现禁止复制文本的效果。
本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。
一般网页上可复制的文字都会出现下面的I
状光标
如果不想让复制文本,通过设置CSS 的 user-select就可以达到目的。
user-select属性设置或检索是否允许用户选中文本。user-select的默认值是 text,可以选择文本。
在 web 浏览器中,如果您在文本上双击,文本会被选取或高亮显示。此属性用于阻止这种行为。
语法:
user-select: auto|none|text|all;
值 | 描述 |
---|---|
auto | 默认。如果浏览器允许,则可以选择文本。 |
none | 防止文本选取。 |
text | 文本可被用户选取。 |
all | 单击选取文本,而不是双击。 |
只需要给文本元素添加“user-select:none;
”样式,让文本元素无法被鼠标选取,即可实现禁止复制文本效果。
因为user-select属性是css3规范中新增的一个功能,有兼容性问题,因此对于不同浏览器要加前缀。
禁止复制文本的写法:
-moz-user-select:none; /* Firefox私有属性 */ -webkit-user-select:none; /* WebKit内核私有属性 */ -ms-user-select:none; /* IE私有属性(IE10及以后) */ -khtml-user-select:none; /* KHTML内核私有属性 */ -o-user-select:none; /* Opera私有属性 */ user-select:none; /* CSS3属性 */
效果(现在是这种箭头光标):
示例:禁止文本被选中,实现禁止复制文本功能
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <style> .test{ padding:10px; -webkit-user-select:none; -moz-user-select:none; -o-user-select:none; user-select:none; background:#eee;} </style> </head> <body> <div onselectstart="return false;" unselectable="on">选择我试试,你会发现怎么也选择不到我,哈哈哈哈</div> </body> </html>
(学习视频分享:css视频教程)