<map>, <area> 태그를 활용하여 하나의 이미지에 링크 여러개 달기
<map> 과 <area> 태그를 활용하면 이미지 하나에 링크를 여러개 삽입할 수 있습니다.
그림판을 이용하여 정말 간단하게 이미지 파일 하나를 만들어 보았습니다.
안에 facebook이라 적혀있는 사각형을 클릭하면 facebook 사이트로 연결되고, 안에 google이라 적혀있는 원을 클릭하면 google 사이트로 연결되도록 만들어 보겠습니다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>map, area 태그를 활용하여 하나의 이미지에 링크 여러개 달기</title>
</head>
<body>
<h1>map, area 태그를 활용하여 하나의 이미지에 링크 여러개 달기</h1>
<img src="example.png">
</body>
</html>
먼저 <img> 태그를 활용하여 이미지를 삽입합니다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>map, area 태그를 활용하여 하나의 이미지에 링크 여러개 달기</title>
</head>
<body>
<h1>map, area 태그를 활용하여 하나의 이미지에 링크 여러개 달기</h1>
<map name="linkExample">
<area shape="rect" coords="55, 84, 214, 243" href="https://www.facebook.com/" alt="Facebook">
<area shape="circle" coords="450, 160, 95" href="https://www.google.com/" alt="Google">
</map>
<img src="example.png" usemap="#linkExample">
</body>
</html>
그 후 <map> 태그를 만들고 그 안에 <area> 태그를 만듭니다. <map> 태그에는 이름을 붙여줘야 어떤 이미지에 대해 링크를 달 것인지 정할 수 있으므로 이름을 지어줘야 합니다. 저는 linkExample 이라고 지었습니다.
그 다음으로 <img> 태그 안에 usemap이라는 속성을 지정하고 그 안에 <map> 태그의 이름인 linkExample을 넣어주었습니다. 단, 여기서 주의해야할 점은 이름 앞에 반드시 #을 넣어야 한다는 점입니다.
<area> 태그 안의 속성들을 살펴보면, shape는 모양, coords는 좌표, href는 링크, alt는 이미지가 깨졌을 때 원활한 설명을 위해 대신 나오는 문구 입니다.
여기서 좌표를 어떻게 구하냐 의문이 들 수 있는데, 좌표는 그림판을 이용하여 쉽게 구할 수 있습니다.
이미지 파일을 그림판에서 열고 이미지부분에 마우스를 대면 그림판 좌측 아래 부분에 좌표가 뜹니다.
사각형의 경우 coords="좌표 1의 x값, 좌표 1의 y값, 좌표 2의 x값, 좌표 2의 y값"이며,
원의 경우 coords="좌표 1의 x값, 좌표 1의 y값, 원의 반지름" 입니다.
원의 반지름은 그림판에서 빨간색 박스 부분을 통해 구할 수 있습니다.
example.zip
첨부한 파일의 압축을 풀고 열어서 직접 확인해보시면 더 쉽게 이해가 갈 것입니다.