툴팁은 title 태그를 사용한 엘리먼트에 마우스를 올리면 웹 브라우저가 표시하는 노란색 작은 텍스트 상자입니다.
자바스크립트와 CSS를 이용해서 멋진 스타일의 툴팁을 직접 만드는 사례가 있었습니다만, CSS 포지셔닝을 이용하면 순수하게 CSS만으로도 툴팁을 만들 수 있습니다.
먼저 의미를 살리면서 구조화된 마크업을 만듭니다.
1 2 3 4 |
<p><a href="http://www.baraem.net/" class="tooltip">
</p> |
여기 사용한 링크와 구분하기 위해서 tooltip이라는 클래스를 지정했습니다.
링크 안에는 링크 텍스트로 표시할 글을 넣고, 그 뒤에 튤팁으로 표시할 글을 span으로 묶어 넣었습니다.
튤팁 텍스트는 괄호안에 넣어서 스타일이 적용되지 않더라도 의미를 읽을 수 있도록 했습니다.
가장 먼저 앵커의 position 속성을 relative로 지정합니다.
이렇게 하면 span의 내용을 부모 엘리먼트인 앵커의 위치를 기준으로 해서 원하는 자리에 표시되도록 할 수 있습니다. 그리고 처음부터
툴팁 텍스트가 표시되면 안되기 때문에 display속성을 none으로 지정합니다.
1 2 |
a.tooltip{position:relative;} |
이제 앵커 위로 마우스가 올라오면 span의 내용이 나타나게 해야 합니다.
먼저 span의 diaplay속성값을 block으로 지정하는데, 마우스가 올라오는 상태에만 지정해야 합니다.
이 상태에서 코드를 실행해 보면, 링크 위로 마우스를 올렸을 때 링크 옆에 span에 지정한 텍스트가 표시되는 게 보일 겁니다.
앵커 오른쪽 하단에 span 텍스트가 표시되도록 하려면 span position 속성을 absolute로 바꾸고 위에서 1em만큼, 왼쪽에서 2em만큼에
해당하는 위치를 지정합니다.
a.tooltip:hover span{
display:block;
position:absolute;
top:1em;
left:2em;
padding:0.2em 0.6em;
border:1px solid #996633;
background-color:#ffff66;
text-decoration:none;
color::#000;
}
좀더 툴팁다운 모양을 만들기 위해 패딩,테두리선, 배경색까지 지정해 봅니다.
<마우스 롤오버시 나타난다>
출처: 네이버 블로그
'CSS' 카테고리의 다른 글
CSS레이아웃-플로트를 이용한 2단 레이아웃 (0) | 2013.01.08 |
---|---|
CSS 레이아웃-중간 정렬하기 (0) | 2013.01.08 |
CSS 링크 스타일 (0) | 2013.01.08 |
CSS 핵과 필터 (0) | 2013.01.08 |
CSS 포지션(position) 정리 (0) | 2013.01.08 |