c语言编程笔录

首页 >   > 笔记大全

笔记大全

css 取消长按复制

更新时间:2023-11-25

问题描述

在编写前端代码时,有时需要禁止用户通过长按复制文本的方式获取页面中的内容。例如,当我们需要展示一些敏感信息或版权内容时,我们希望用户无法直接复制。本文将介绍如何使用 CSS 来取消长按复制功能。

解决方案

为了取消长按复制功能,我们可以使用 CSS 的 user-select 属性。该属性用于控制用户是否可以选择文本内容。默认情况下,该属性值为 auto,表示用户可以选择文本。我们将其设置为 none 即可禁止长按复制。

body {
  -webkit-touch-callout: none; /* 取消长按菜单列表(iOS) */
  -webkit-user-select: none; /* Chrome/Safari/Opera */
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
  user-select: none; /* 其他浏览器 */
}

代码解释

上述代码片段中,我们为 body 元素添加了一些 CSS 属性来取消长按复制功能。具体解释如下:

-webkit-touch-callout: none;:该属性用于取消长按菜单列表,仅适用于 iOS 系统。

-webkit-user-select: none;:该属性用于取消用户选择文本,适用于 Chrome、Safari 和 Opera 浏览器。

-moz-user-select: none;:该属性用于取消用户选择文本,适用于 Firefox 浏览器。

-ms-user-select: none;:该属性用于取消用户选择文本,适用于 Internet Explorer 和 Edge 浏览器。

user-select: none;:该属性用于取消用户选择文本,适用于其他浏览器。

总结

通过设置相应的 CSS 属性,我们可以轻松地取消长按复制功能。这在一些特定的场景中非常有用,例如保护敏感信息的展示或版权内容的保护。当然,需要注意的是,取消长按复制功能可能会对用户体验产生一定影响,因此在使用时需要权衡利弊。