Всегда вешай draggable="false" на картинки — маленький атрибут с большим значением!
Когда ты последний раз случайно “потащил” изображение на сайте мышкой или пальцем? Возможно, этого ты и не замечал — а вот твои пользователи замечают, и раздражаются.
По умолчанию все изображения в HTML могут быть перетаскиваемыми. Это поведение редко бывает полезным, но часто мешает. Особенно на мобильных устройствах, touch-интерфейсах и в drag’n’drop UI.
HTML-атрибут draggable="false" запрещает браузеру инициировать перетаскивание изображения.
<img src="/logo.png" alt="Логотип" draggable="false" />Теперь изображение нельзя случайно «схватить» мышкой или пальцем — оно просто зафиксировано в интерфейсе.
Пользователь пытается свайпнуть — но вместо этого браузер начинает перетаскивание картинки. Особенно часто это случается:
Это нарушает UX и выглядит как баг.
Если ты реализуешь собственное перетаскивание элементов (например, карточек или блоков), браузер может «мешать», если внутри них есть img. Браузер будет пытаться перетащить саму картинку, а не твой элемент.
👉 Решение: на все img в таких элементах — ставь draggable="false".
Некоторые браузеры (особенно на iOS) некорректно обрабатывают перетаскивание изображений:
UX должен быть предсказуемым. Если пользователь случайно начинает перетаскивание, это сбивает его с пути. Простая блокировка через draggable="false" делает сайт более стабильным и аккуратным.
draggable="false"<img src="/avatar.jpg" alt="Профиль" draggable="false" />document.querySelectorAll('img').forEach((img) => {
img.setAttribute('draggable', 'false');
});<img src="/icon.svg" alt="Иконка" draggable={false} />Один маленький атрибут draggable="false":