1. 概述

1.1 说明

在项目过程中,有时候需要网页中内容信息不可被复制进行保护数据信息,故可使用css属性user-select进行控制用户能否选中文本。

1.2 语法

user-select : none | text | all | contain | auto

    • none:文本不能被选择,即不可选中复制
    • text:可以选择文本,即可以选中复制文本信息
    • all:当所有内容作为一个整体时可以被选择。如果双击或者在上下文上点击子元素,那么被选择的部分将是以该子元素向上回溯的最高祖先元素。
    • contain(element):可以选择文本,但选择范围受元素边界的约束,仅在IE中受支持
    • auto:
      • 在::before和::after伪元素上,计算值是none
      • 如果元素是可编辑元素,则计算值是contain
      • 否则,如果此元素的父元素的user-select的计算值为all,计算值则为all
      • 否则,如果此元素的父元素的user-select的计算值为none,计算值则为none
      • 否则,计算值则为text

默认值:text

适用于:除替换元素外的所有元素

1.3 user-select 使用

  • user-select属性的语法:

    • user-select: none;
    • user-select: auto;
    • user-select: text;
    • user-select: contain;
    • user-select: all;
  • 火狐浏览器
    • -moz-user-select: none;
    • -moz-user-select: text;
    • -moz-user-select: all;
  • 谷歌浏览器
    • -webkit-user-select: none;
    • -webkit-user-select: text;
    • -webkit-user-select: all;
  • IE浏览器
    • -ms-user-select: none;
    • -ms-user-select: text;
    • -ms-user-select: all;
    • -ms-user-select: element;

  说明:

    1.IE6-9不支持该属性,但支持标签属性  onselectstart="return false;"[IE/Safari/Chrome] 来达到 user-select:none的效果

    2.Opera 12.5之前也不支持该属性,支持私有的标签属性 unselectable="on" 来达到user-select:none的效果,on对应的是off

    

2. 代码

2.1 代码示例

  一般使用如下:

  -webkit-user-select:text;
-moz-user-select:text;
-ms-user-select:text;
user-select:text;

 

  

CSS user-select文本是否可复制的更多相关文章

  1. css 禁止文本被选中复制代码

    css 禁止文本被选中复制代码: .cus-text{ -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none ...

  2. css解决select下拉表单option高度的办法

    css在给select下拉表单设置样式如边框时可以轻松搞定,而我们在不喜欢其默认的下拉箭头的样式时试图通过background:url(图片路径)来修改之,则往往会出现浏览器的兼容性问题,在网上查了好 ...

  3. HTML: css 修飾文本和字體

    因爲這個我認爲不用記,所以關於css 修飾文本&字體的屬性只需要打開css手冊,找到(屬性 > 文本) & (屬性 > 字體)翻看即可. 關於字體屬性: Propertie ...

  4. jquery禁用右键、文本选择功能、复制按键的实现

    同时适合IE.firefox.谷歌浏览器下适用,经过筛选代码如下 //禁用右键.文本选择功能.复制按键 $(document).bind(“contextmenu”,function(){return ...

  5. CSS控制长文本内容显示(截取的地方用省略号代替)

    自动换行问题,正常字符的换行是比较合理的,而连续的数字和英文字符常常将容器撑大,下面介绍的是CSS如何实现处理的方法. 现实中经常出现一些内容比较长的文本,为了使整体布局美观,需要将文本内容控制在一行 ...

  6. CSS发光边框文本框效果

    7,166 次阅读 ‹ NSH Blog 网页设计 CSS发光边框文本框效果 或许你看过Safari浏览器下,任何输入框都会有一个发光的蓝色边框,这不单纯只是蓝色边框而已,其实包含了许多CSS3技巧知 ...

  7. css去除ios文本框默认圆角

    css去除ios文本框默认圆角 input, textarea {-webkit-appearance: none;}

  8. 14 ,CSS 文字与文本

    1.CSS 中长度与颜色 2.CSS 中的文字属性 3.CSS 中的文本属性 14.1 CSS 中长度与颜色 长度单位 说明 in 英寸 cm 公分 mm 公里 cm 以目前字体高度为单位 ex 以小 ...

  9. css 样式控制文本过长实现省略号

    css 样式控制文本过长实现省略号 .topicTitle{ text-overflow: ellipsis; max-width: 75%; overflow: hidden; white-spac ...

  10. 【CSS学习】--- 文本样式

    一.前言 CSS文本属性可以定义文本的外观.通过文本属性,可以定义文本的颜色.字符间距,对齐文本,装饰文本,对文本进行缩进,等等. CSS常用的文本属性目录: text-align 文本对齐属性 te ...

随机推荐

  1. LUOGU P2280 [HNOI2003]激光炸弹

    传送门 解题思路 二维前缀和. 代码 #include<iostream> #include<cstdio> #include<cstring> using nam ...

  2. [转]用HttpSessionListener与HttpSessionBindingListener实现在线人数统计

    原文链接:http://www.cnblogs.com/shencheng/archive/2011/01/07/1930227.html 下午比较闲(其实今天都很闲),想了一下在线人数统计方面的实现 ...

  3. thinkphp浏览历史功能实现方法

    这篇文章主要介绍了thinkphp浏览历史功能实现方法,可实现浏览器的浏览历史功能,是非常实用的技巧,需要的朋友可以参考下 本文实例讲述了thinkphp浏览历史功能实现方法,分享给大家供大家参考.具 ...

  4. gitlab merge request

    分支提了mr之后, 又有commit 不用重新提mr,mr中会自动更新 要保证项目下的.git目录中有hooks这个目录(如果是从github迁移到gitlab的项目, 可能没有这个目录, 导致mr不 ...

  5. go 交叉编译扩展 ac68u 梅林固件, go 依赖 zoneinfo 的解决问题

    CGO_ENABLED= GOOS=linux GOARCH=arm GOARM= go build ddns.go r8500 虽然是 ARMv7 , 但应该是被阉割过,不支持 ARMv7 的一些特 ...

  6. Web充斥着存在漏洞的过期JavaScript库

    虽然使用第三方软件库通常会降低开发的时间,但同时也会增加网站暴露出的攻击表面,对此我们应有充分的认识.因此需要保持第三方软件库的最新版本依赖,以便从安全更新中获益.即便如此,一份近期研究表明,在Ale ...

  7. apt-get正在等待报头(waiting for headers)

    可能的解决方法 1. 删除/var/cache/apt/archives/下的所有文件.可能是上次没有成功导致遗留了部分文件. 2. 如果使用的是代理,需要检查DNS.如果机器不能连接DNS服务器,要 ...

  8. int 13h,磁盘中断

    直接磁盘服务(Direct Disk Service——INT 13H)  00H —磁盘系统复位 01H —读取磁盘系统状态 02H —读扇区 03H —写扇区 04H —检验扇区 05H —格式化 ...

  9. Servlet开发总结(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口. 用户若想用发一个动态web资源(即开发一个Java程序 ...

  10. Javascript-循环输出菱形,并可菱形自定义大小

    var Cen = 6;//定义菱形中部为第几行(起始值为0) //for循环输出菱形 document.write("<button onclick='xh()'>点我for循 ...