Как запретить посетителю сохранять картинки
![Как запретить посетителю сохранять картинки](/images/articles/html-ban-images.jpg)
Ко мне иногда обращаются люди, которые просят рассказать, как запретить посетителю сохранять картинки на их сайте. Действительно, бывают случаи, когда не хочется, чтобы Вашу уникальную картинку, над которой Вы работали, взяли и растащили на сотни сайтов. Но, увы, 100% эффективного способа для подобного запрета не существует. Всё, что можно сделать, это вынудить человека плюнуть на это изображение, немного усложнив ему задачу. Вот как это сделать, мы и обсудим в данной статье.
Есть 2 способа. Первый вообще очень простой, он состоит в использовании атрибута oncontextmenu, отвечающего за обработчик события по вызову контекстного меню:
<img src="image.jpg" alt="" oncontextmenu="return false;" />
Теперь пользователь не сможет вызвать контекстное меню правой кнопкой мыши и выбрать там "Сохранить изображение". Казалось бы, проблема решена, но нет. Во-первых, это работает не во всех браузерах, а, во-вторых, контекстное меню и вовсе не нужно, чтобы сохранить картинку. Можно просто перетащить левой кнопкой мыши картинку на новую вкладку, там она спокойно откроется и можно будет её сохранить. Как видите, данный способ спасёт только в некоторых браузерах, причём от самых новичков.
Второй способ значительно лучше, суть его состоит в том, что тега img нет вообще, следовательно, и сохранять нечего. А картинка выводится через CSS с помощью свойства background:
<div style="background: url('image.jpg') no-repeat; width: 100px; height: 100px;"></div>
Данный способ спасёт уже от всех, кто не знаком с самыми базовыми знаниями по HTML и CSS. Но данный подход плох с точки зрения оптимизации под поисковые системы. Всё-таки значимость атрибута alt у тега img никто не отменял. А также, кто захочет всё-таки вытащить картинку, тот увидит путь и пропишет его в адресной строке, тем самым, опять же, сохранив картинку.
Как видите, запретить посетителю сохранять картинки очень трудно, поэтому я всегда отвечаю на данный вопрос так: "Не бойтесь, что Вашу картинку кто-то возьмёт, главное, чтобы это было с пользой для Вас, поэтому делайте на картинке водяные знаки, например, с адресом Вашего сайта. Сделать это можно в Photoshop или Gimp.". Вот и всё, и тогда каждое воровство Вашей картинки будет означать увеличение посещаемости для Вашего сайта.
-
-
Михаил Русаков
Комментарии (4):
Спасибо! Полезно!
Ответить
Я придумал идеальный способ! <div style="background: url('image.jpg') no-repeat; width: 100px; height: 100px;"><img src="image.jpg" alt="Image" oncontextmenu="return false;" height="1" width="1"></div>
Ответить
я обычно скачиваю при таком случае картинку через прогу Teleport Pro точнее всю страницу...
Ответить
Вы не сможете запретить пользователю скачивать картинки. 1. Все картинки при просмотре странички автоматом уже СКАЧИВАЮТСЯ в кеш браузера где их свободно можно найти. 2. Даже если Вам удастся их там храинть частями и проч замороченымии способами, остается старый добрый PrtScr. Вывод- картинку можно защитить только водяным знаком, да и тот при "прямых руках" легко чистится. Особо меня умиляют люди, которые сами берут картинку из инета а потом мужественно пытаются ее защитить :))
Ответить
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.