Кратко
СкопированоСвойство touch позволяет контролировать то, как с элементом можно взаимодействовать на сенсорных экранах.
.example { touch-action: manipulation;}
.example {
touch-action: manipulation;
}
Пример
СкопированоЧтобы увидеть разницу в примерах ниже, нужно воспользоваться устройством с сенсорным экраном.
У нас есть две одинаковые картинки внутри контейнеров, первую мы сможем скроллить, а вторую нет, так как установлено значение none у свойства touch.
.touch-auto { touch-action: auto;}.touch-none { touch-action: none;}.map { width: 350px; height: 250px; overflow: scroll; position: relative;}.map img { width: 640px; height: 425px;}
.touch-auto {
touch-action: auto;
}
.touch-none {
touch-action: none;
}
.map {
width: 350px;
height: 250px;
overflow: scroll;
position: relative;
}
.map img {
width: 640px;
height: 425px;
}
<div class="map touch-auto"> <img src="map.jpg" alt="Карта мира"></div><div class="map touch-none"> <img src="map.jpg" alt="Карта мира"></div>
<div class="map touch-auto">
<img src="map.jpg" alt="Карта мира">
</div>
<div class="map touch-none">
<img src="map.jpg" alt="Карта мира">
</div>
Как понять
СкопированоСвойство touch управляет взаимодействием с сенсорным экраном и напоминает более распространённое свойство pointer, которое регулирует взаимодействие мышкой.
Пригодится touch, например, чтобы отключить обработку прикосновений браузером по умолчанию на сенсорных экранах. Вместо неё можно реализовать свою логику с помощью JavaScript. Представьте, что при скролле карты вы хотите, чтобы она масштабировалась — придётся переопределять поведение.
Отключить дефолтное поведение можно и программно. Но с touch мы гарантируем, что браузер знает наши планы до того, как будут вызваны слушатели событий.
Как пишется
Скопированоnone— запрещает все типы взаимодействий. Можно обрабатывать события при помощи JavaScript.auto— разрешает все типы взаимодействия (значение по умолчанию).manipulation— элемент можно сдвигать и зумить. Это сокращение для комбинацииpan. Остальные нестандартные жесты, вроде двойного тапа, запрещены.- x pan - y pinch - zoom pan— элемент можно сдвигать по оси x с помощью одного пальца. Это сокращение для значений- x panи- left pan. Может использоваться в сочетании с- right pan,- y pan,- up panи- down pinch.- zoom pan— элемент можно смещать по оси y с помощью одного пальца. Это сокращение для значений- y panи- up pan. Может использоваться в сочетании с- down pan,- x pan,- left panи- right pinch.- zoom pan— элемент можно смещать только если начать движение от левого края (эксперимент).- left pan— элемент можно смещать только если начать движение от правого края (эксперимент).- right pan— элемент можно смещать только если начать движение снизу вверх (эксперимент).- down pan— элемент можно смещать только если начать движение сверху вниз (эксперимент).- up pinch— элемент можно зазумить щипком. Можно совместить с- zoom pan,- x pan,- left pan,- right pan,- y pan,- up pan.- down
Подсказки
Скопировано💡 touch может помешать людям со слабым зрением читать страницу, если не предусматривается другая возможность увеличить содержимое.