jQuery Image map альтернатива
Какова альтернатива использованию карт изображений? Недавно я увидел вопрос, и кто-то сказал: "Почему люди все еще используют карты изображений?"и я хотел знать хорошее CSS или JavaScript решение, чтобы увидеть для себя, если его лучше использовать, чем изображение карты.
5 ответов:
CSS-это способ работы с картами изображений. Вы можете легко расположить ссылку с нужной шириной и высотой над любой областью изображения, изменив значения ширины и высоты в левом верхнем углу.
Проверьте рабочий пример на http://jsfiddle.net/DBvAY/1/
В Примере наведите курсор мыши на лицо ребенка или красный свет на изображении. Чтобы изменить положение якорей, все, что вам нужно сделать, это изменить верхние и левые свойства #pos1 и #pos2. То же самое касается ширины и высоты из ограничительной коробки. Все сделано с помощью CSS без javaScript.
Если ваш сайт является адаптивным, вы можете попробовать использовать SVG в качестве отличной альтернативы картам изображений.
SVGs можно легко сделать отзывчивыми, а также реагировать на эффекты наведения и т. д.
Это хорошая статья , в которой обсуждается этот вопрос.
Как ответ Хусейна. Я просто добавляю свои замечания и делюсь с вами некоторыми ссылками в лихорадке использования карты изображений.
- Вы можете расположить изображение не только как квадрат, но также как прямоугольник и даже многоугольник.
- Вы можете добавить свой вывод желания во всплывающем экране, наведя указатель мыши на позицию/ и даже вы можете выполнить действие, а также.
Чтобы получить больше, пожалуйста, посетите эти ниже linkshelp полный
link 1imagemapster
link 2imagemapster-решенияВы можете погуглить его как изображение mapster для получения дополнительной информации. спасибо
Это расширяет ответ Хусейна и делает его масштабируемым в адаптивном дизайне. Также вы можете сделать различные простые фигуры из CSS с помощью transform. Чтобы найти приблизительное положение ( % ), вы можете получить справку из этой страницы.
Вот пример:
html, div, p, a { font-family: arial; } .map-image { display: inline-block; position: relative; overflow: hidden; padding: 0; } .map-image img { width: 100%; height: auto; display:block; } .map-image a { text-decoration: none; padding: 5px; color: #FFF; text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5); margin: 0; font-size: 4vw; } .map-image a:hover { border: 1px solid #FFF; margin: -1px; } .map-image a.rotate { border-radius: 50%; -ms-transform: rotate(20deg); /* IE 9 */ -webkit-transform: rotate(20deg); /* Chrome, Safari, Opera */ transform: rotate(20deg); } .map-image a.rotate span { position:absolute; -ms-transform: rotate(-20deg); /* IE 9 */ -webkit-transform: rotate(-20deg); /* Chrome, Safari, Opera */ transform: rotate(-20deg); top:25%; } .map-image a.skew { border-radius: 15%; -ms-transform: skewX(-20deg) rotate(9deg); -webkit-transform: skewX(-20deg) rotate(9deg); transform: skewX(-20deg) rotate(9deg); } .map-image a.skew span { position:absolute; -ms-transform: skewX(20deg) rotate(-9deg); -webkit-transform: skewX(20deg) rotate(-9deg); transform: skewX(20deg) rotate(-9deg); top:12%; left:4%; } .map-image svg { position:absolute; } .map-image polygon:hover { stroke: #FFF; } .map-image .poligon-title { position:absolute; left:19%; top:43%; color: #FFF; text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5); margin: 0; font-size: 2.6vw; z-index:100; }<div class="map-image"> <img src="http://cdn.frooition.com/060129/images/100_1428.JPG"> <a href="https://www.google.com" title="Front window" style="position: absolute; left: 24.4%; top: 16.3%; width: 33.3%; height: 25.39%; z-index: 99; background-color:rgba(255,0,0,0.3);" class="skew"><span>Google</span></a> <a href="https://www.facebook.com" title="Seats" style="position: absolute; left: 58%; top: 0.16%; width: 28.4%; height: 26.33%; z-index: 96; background-color:rgba(0,255,255,0.2);">Facebook</a> <a href="https://www.linkedin.com/" title="Wheel" style="position: absolute; left: 43%; top: 57.4%; width: 20%; height: 39.34%; z-index: 99; background-color:rgba(0,255,0,0.2);" class="rotate"><span>Linkedin</span></a> <svg height="auto" width="34%" style="position: absolute; left: 10%; top: 36%; z-index: 99;" viewBox="0 0 450 600"> <a id="anchor" xlink:href="https://stackoverflow.com" target="_top"> <polygon points="190,5 385,60 210,320 0,300 200,134 205,120 205,104" style="fill:rgba(0,0,0, 0.4);stroke-width:1" /> Sorry, your browser does not support inline SVG. </a> </svg> <div class="poligon-title">Stackoverflow</div> </div>(смешивание с SVG polygon немного экспериментально)
Comments