QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

查看: 3696|回复: 0

[HTML/CSS/JS] html5移动端禁止长按图片保存的几种方法

[复制链接]

等级头衔

积分成就    金币 : 2861
   泡泡 : 1516
   精华 : 6
   在线时间 : 1325 小时
   最后登录 : 2026-4-13

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老活跃会员

联系方式
发表于 2021-4-20 09:52:01 | 显示全部楼层 |阅读模式
       在移动端访问H5页面的时候,长按图片就会把图片保存起来,为了能够让用户体验更好一些,我们需要长按的时候也不保存图片。那该如何实现呢?下面给出3种解决方案。
$ q- g% s8 a2 U/ x4 n; e: x方案一:使用 pointer-events:none( ~3 s+ d4 \- v' K6 Y3 S  i
img{
   pointer-events:none;
}
      亲测有效,适用于微信客户端的手机页面,图片被打开的情况.
0 J7 I7 U8 y" |) ~方案二:全局属性
* Z9 T2 F5 l8 S7 W# Z# U. L
*{
   -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
      -webkit-touch-callout主要用于禁止长按菜单。当然针对webkit内核的浏览器。user-select属性是css3新增的属性,用于设置用户是否能够选中文本。
7 M7 L4 c! h7 @6 l; c) N7 A6 q+ m方案三:加一层遮罩层
; m( c. \; i7 a- M) S% \        图片上边加一层div类似于遮罩层,这样图片就不会被点击,右击或长按也不会出现如图的图片另存为的选项了。代码示例如下:% m/ Q6 n7 {+ a7 n% |. p
<div class="imgbox">
    <div class="imshar"></div>
    <img src=""/>
</div>
<style>
 .imgbox{
    position: relative;
    width: 80%;
    margin: 0 auto;
    margin-top: 20px;
}
 .imgbox .imshar{
    position: absolute;
    z-index: 100;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 0;
}
.imgbox img{
    display: block;
    width: 100%;
}
</style>
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2026-4-15 04:25

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表