#javascript #html #css
#javascript #HTML #css
Вопрос:
как бы я добавил несколько ссылок на изображение. Связывая изображение, я бы просто обернул его a href
. У меня было бы изображение дерева с яблоками, тогда я хотел бы добавить ссылку на каждое яблоко на изображении. Как мне это сделать?
Я думал об использовании абсолютной позиции, но это кажется утомительным, особенно при попытке сделать его мобильным, реагирующим на перемещение ссылок.
Комментарии:
1. это можно сделать с
map
помощью тега2. …но это для совершенно другой цели. Лучше использовать абсолютное позиционирование.
3.
<map>
создан для такого рода вещей, но это так же утомительно, как и размещение некоторых элементов над изображением.4. так что в любом случае оба варианта утомительны
Ответ №1:
Яблоня
Вы можете использовать генератор карт изображений
.wrap {
transform: scale(0.3);
width: 0px;
height: 0px;
}
<div class="wrap">
<img src="https://www.freepngimg.com/thumb/tree/76337-vector-fruit-tree-apple-download-free-image.png"
usemap="#image-map">
<map name="image-map">
<area target="" alt="" title="" href="#1" coords="626,247,775,130" shape="rect">
<area target="" alt="" title="" href="#2" coords="495,265,632,378" shape="rect">
<area target="" alt="" title="" href="#3" coords="620,437,750,558" shape="rect">
<area target="" alt="" title="" href="#4" coords="346,829,467,931" shape="rect">
<area target="" alt="" title="" href="#5" coords="579,937,707,1041" shape="rect">
<area target="" alt="" title="" href="#6" coords="885,289,1029,386" shape="rect">
<area target="" alt="" title="" href="#7" coords="1082,540,1210,652" shape="rect">
<area target="" alt="" title="" href="#8" coords="1268,926,1403,1035" shape="rect">
<area target="" alt="" title="" href="#9" coords="1025,1096,1171,1206" shape="rect">
</map>
</div>
Комментарии:
1. Я вижу, скажем, хочу ли я сделать его адаптивным для мобильных устройств? смогу ли я изменить координаты в css медиа-запроса
2. Есть два варианта, чтобы сделать его отзывчивым: 1. Использование JS. (Излишне сложный для этой цели) 2. Использование CSS путем изменения масштаба. Пример: @media screen и (максимальная ширина: 800 пикселей) { .wrap { преобразование: масштабирование (0.2); } }