아티클

라인이 겹치는 이미지탭 롤오버

2007-02-12 20:58:14

사이트 제작 시 탭을 사용하는 경우가 많습니다.
탭 사이 간격이 떨어져 있어서 이미지로 자르기 편한 경우라면 상관없지만, 마우스 오버시 탭과 탭 사이의 라인이 겹쳐져야 하도록 디자인이 나오는 경우도 꽤 있습니다.
오버 시 라인이 겹쳐지는 탭 이미지 만드는 법을 알아보도록 하겠습니다.

▶ 적용된 예제 미리보기

소스는 아래와 같습니다.
#tab {clear:both; width:648px; height:26px; margin-top:5px; background:url(img_blog/jin0/tab/bg_tab.gif) repeat-x center bottom; } 
#tab li {display:inline; text-align:left; }
#tab a {float:left; height:26px; margin-left:-2px; font-size:0; }
#tab a:hover, #tab a.selected, #tab a.selected:hover {background-position: 0 -26px}
#tab01 a {width:144px; background:url(img_blog/jin0/tab/tab_mypage01.gif) top left no-repeat; text-indent:-9000px;}
#tab02 a {width:135px; background:url(img_blog/jin0/tab/tab_mypage02.gif) top left no-repeat; text-indent:-9000px;}
#tab03 a {width:135px; background:url(img_blog/jin0/tab/tab_mypage03.gif) top left no-repeat; text-indent:-9000px;}
<ul>
<li><a href="#">내가 플레이한 게임</ a></ li>
<li><a href="#">월정액현황</ a></li>
<li><a href="#">내가 구매한 게임</ a></ li>
<li><a href="#"></ a></ li>
</ul>
(위 소스에서는 ul, li 태그에 적용된 id 값이 보이지 않으므로 예제 페이지의 소스보기를 참고해 주시기 바랍니다.)

이 탭은 요즘 많이 사용되는 방법으로 UL 태그를 이용하는 방법입니다.
CSS 를 없애고 선형화 시켜보면 이미지는 없어지고 텍스트 메뉴로 아래와 같이 나타나는 걸 알 수 있을 것입니다.

탭의 off시 이미지와 마우스 over 및 select 시 이미지를 각각 나누지 않고 하나의 이미지 파일로 만들고 이를 background 속성으로 만들어 over 일 경우와 select일 경우의 background 이미지의 포지션 값을 탭의 높이만큼 마이너스로 하면 하나의 이미지로 탭을 표현할 수 있습니다.

위의 예제는 over일 경우와 select일 경우 같은 이미지를 사용하지만 off · over · select 세 경우가 각각 틀린 이미지라면 탭을 3단으로 만들고, over 일 경우는 탭 높이의 두 배만큼, select 일 경우는 탭 높이의 세 배 만큼의 마이너스 값을 적용하면 됩니다.

여기서 포인트는 a 태그에서 {margin-left:-2px; }이미지를 자르는 방법입니다.
a 태그에 margin을 -2px(라인 두께)만큼 주어서 탭과 탭이 겹쳐질 수 있도록 합니다.
그리고 첫 탭이미지는 2px 만큼 앞쪽에 여백을 주고, 두번째와 세번째 탭은 선택되지 않은 상태일 경우만 탭이미지 앞쪽에 2px의 투명영역을 줍니다.

(예제 페이지에서 이미지를 다운받아서 확인해 보세요)

위와 같은 방법은 네이버 검색페이지ijji.com에 적용되어 있습니다.

댓글 0
댓글을 작성하려면 해주세요.