2014-05-15 3 views
1

다음 사이트 (http://www.html-map.com/)를 사용하여 내 사이트에서 사용할 이미지 맵을 만들었습니다. 현재 사용자가 대륙을 가리키면 특정 페이지에 대한 링크가 표시되지만 대륙이 링크임을 나타내는 시각적 신호는 없습니다. 이상적으로 대륙 상단에 어떤 종류의 아이콘이 겹쳐져 색이 바뀌거나 대륙 자체가 강조 표시됩니다.이미지 맵의 영역 강조 표시

후자는 IE8에서 지원되지 않는 SVG가 필요하기 때문에 나는 완전히 잘못된 방식으로 접근하고 있다고 생각하지만 이전 버전을 선택했습니다.

현재 절대 위치 지정을 사용하여 이미지의 맨 위에 아이콘을 중첩하고 있지만 이는 링크가 아이콘에 있어야하므로 처음부터 내 이미지를 매핑하는 전체 프로세스가 낭비되었다는 것을 의미합니다. 이미지 맵 안에 있지 않습니다.

제 질문은 링크 비헤이비어를 유지하면서 각 대륙의 아이콘을 오버레이하기 위해 이미 정의한 매핑 된 영역을 어떻게 사용할 수 있습니까?

영역 태그 내에 스팬을 삽입하려고 시도했지만 전혀 작동하지 않습니다. 어떤 도움이나 대안적인 접근법도 크게 감사 할 것입니다.

HTML

<div class="worldMap"> 
    <img src="http://s30.postimg.org/8bqsljpvl/worldmap.png" alt="" usemap="#map1400147861975"> 
    <map id="map1400147861975" name="map1400147861975"> 
    <area shape="rect" coords="109.99999559765627,10.999995597656266,159.46666159765627,34.46666159765627" title="Europe" alt="Europe" href="#Europe" target="_self"> 
    <area shape="rect" coords="110.99999559765627,40.999995597656266,147.46666159765627,91.46666159765627" title="Africa" alt="Africa" href="#Africa" target="_self"> 
    <area shape="rect" coords="63,56,96,103" title="South America" alt="South America" href="#SouthAmerica" target="_self"> 
    <area shape="rect" coords="25,29,73,42" title="North America" alt="North America" href="#NorthAmerica" target="_self"> 
    <area shape="rect" coords="25.999995597656266,41.999995597656266,83.46666159765627,55.46666159765627" title="Central America" alt="Central America" href="#CentralAmerica" target="_self"> 
    <area shape="rect" coords="159.99999559765627,10.999995597656266,251.46666159765627,64.46666159765627" title="Asia" alt="Asia" href="#Asia" target="_self"> 
    <area shape="rect" coords="190.99999559765627,66.99999559765627,245.46666159765627,101.46666159765627" title="Austrilasia" alt="Austrilasia" href="#Austrilasia" target="_self"> 
    </map> 
    <span class="glyphicon glyphicon-briefcase europe"></span> 
</div> 

내가 여기에 바이올린을 만든

.europe{ 
    position: absolute; 
    left: 125px; 
    top: 22px; 
    color: blue; 
} 

worldMap{ 
    position: relative; 
} 

CSS : 이 http://jsfiddle.net/jezzipin/z6UnR/2/

+0

[사본] (http://stackoverflow.com/questions/1201052/how-do-i-highlight-parts- 시도 of-an-imagemap-on-mouseover)를 지원합니다. 이것은 당신을 도울 수 있습니다. –

+0

당신의 솔루션은 여러개의 이미지를 생성하고 오래된 이미지 인 스프라이트에 넣는 것입니다. 나는 포토샵을 잘하지 않기 때문에 이미지 조작을 피하려고 노력하고 싶다. – jezzipin

+0

여러 이미지로 작업하고 싶지 않다면,'css grayscale' 또는 이와 비슷한 것을 사용하여 특정 영역의 색상을 변경할 수 있다고 생각합니다. –

답변

0

내 생각에 난 모든 공중 선회 영역 (6 개) 새로운 이미지를 creat에있다. 당신은 호버 한 지역의 명백한 색깔을 바꾸어야한다.

그런 다음 javascript를로드하면 항상 올바른 영역에 적합한 이미지가로드됩니다. 한 번 그런 프로젝트가 있었지만 여전히 검색 중입니다.

내게주세요.

PS : alternativ 매핑 프로그램으로, "빠른 이미지 맵"

+0

6 개의 이미지 나 스프라이트 시트를 추가로로드하고 불필요한 Javascript를 사용해야하므로 좋지 않은 생각입니다. 절대 위치 지정 방법을 사용하고 매핑 작업을 포기할 것입니다. – jezzipin

+0

어떻게이 문제를 해결할 수 있습니까? 당신의 생각은 단지 지역 위에 단지 이미지를 적재하는 것일뿐입니다. 이것은 다른 위치 때문에 실현하기가 매우 어렵습니다. – Kjenos

+0

그들은 이미지가 아닙니다. 그것들은 Bootstrap 글꼴의 일부로로드 된 아이콘입니다. 무거운 솔루션을 만들지 않고도이 기능을 활용할 수있는 유일한 방법입니다. 모바일에서도 작동해야한다고 언급 했습니까? 따라서 모바일에 호버 효과가 없으므로 가장 좋은 해결책은 아이콘입니다. – jezzipin