Псевдоселекторы псевдоэлементы типа :before
Но тут ещё стоит учесть ситуацию, когда 2 элемента окажутся рядом друг с другом. Что тогда? Ну, очевидно, один из них будет пеекрывать другой по z-index. Но вероятность что это будет не тот что нужно - высока. В итоге пользоватею нужно будет сначала убрать перекрывающий элемент, поправить целевой, вернуть обратно перекрывающий, а если их несколько?
Поэтому варианта я вижу 3 и их лучше всего совместить:
1) Расширить зону через псевдо
2) Делать выбор элемента по тапу. То есть тапнул на элемент, он выделился - и потом с ним взаимодействуетшь. Если нессколько элементов лежат друг под другом, то выбирать последовательно на каждый тап следующий элемент. Первый тап выбирает самый верхний, второй тап выбирает лежаший под и так далее.
Найти все элементы в координатах тапа поможет метод
https://developer.mozilla.org/en-US/docs/Web/API/D...
3) Сделать условный select в котором можно будет выбрать нужный элемент. В идеале - если каждый элемент будет как-то уникально промаркрован.
Ну и ещё можно дать возможность зумить чтобы элементы становились больше, что облегчит взаимодействие с ними