CSS user-select属性拾遗_html/css_WEB-ITnose
程序员文章站
2022-03-04 10:26:14
...
昨天把Notebook整理了一下,去查了一下手册,原来之前比较忽略user-select这个属性,因为之前以为只有webkit才支持的。手册进行了补充: IE6-9不支持该属性,可使用标签属性 onselectstart="return false;" 来实现; Oprea老版本使用私有的标签属性 unselectable="on" 来达到 user-select:none 的效果;最新Opera中已经支持webkit前缀的此属性。 除Chrome和Safari外,在其它浏览器中,如果将文本设置为 -ms-user-select:none;,则用户将无法在该文本块中开始选择文本。不过,如果用户在页面的其他区域开始选择文本,则用户仍然可以继续选择将文本设置为 -ms-user-select:none; 的区域文本;
user-select 禁止用户选中文字
none:文本不能被选择
text:可以选择文本
all:当所有内容作为一个整体时可以被选择。如果双击或者在上下文上点击子元素,那么被选择的部分将是以该子元素向上回溯的最高祖先元素。
element:可以选择文本,但选择范围受元素边界的约束(webkit暂未支持)
兼容的处理:
总结则是:
html:
禁止被选择的文字
css:
/*在自动生成前缀时*/p{user-select:none;} /*在不自动生成前缀时*/p{ user-select:none; -webkit-user-select:none; -ms-user-select:none; -moz-user-select:none;}
谈到用户体验,似乎这么做除了一些必要的辅助地方,例如简单的避免drag事件,好像用途不大(用于防止盗文什么的没什么意义)。
但是无意间发现一个挺有用的地方,现在用字体做图标常见,一日在处理这个页面
侧边下方的副本切换按钮图标,则是引的iconfont,由于用户点击频繁,则会导致选中文字,看起来很不美观和谐,在这里应用一下user-select:none那是极好的。
故,简单的一个小心得,在用字体做图标时,图标所在元素会被频繁点击时,可考虑添加user-select:none,防止图标字体被作为文字选择而影响美观。
上一篇: css3属性选择器包括哪几种
下一篇: css3的伪类和伪元素的区别是什么
推荐阅读
-
请大家帮我看一下我这段代码中的ul和a为什么不能显示在同一行中。_html/css_WEB-ITnose
-
新手问,像这样用div做好还是dl dt dd做好_html/css_WEB-ITnose
-
过渡_html/css_WEB-ITnose
-
jquery给HTML元素添加 事件_html/css_WEB-ITnose
-
如何优雅地使用Sublime Text3_html/css_WEB-ITnose
-
前端wap页面问题,跪求解答,_html/css_WEB-ITnose
-
chrome中不可见字符引发的float问题_html/css_WEB-ITnose
-
栅格布局的两种简单的实现方式_html/css_WEB-ITnose
-
css3实现的文本无法选中效果_html/css_WEB-ITnose
-
div+css布局时的浏览器兼容问题_html/css_WEB-ITnose