각종 팁&정보를 나누는 곳입니다.
누군가에게 도움이 된다 싶으시면 언제라도 포스팅 :)
글 등록하기 | 내글 관리하기 | 연재글 | 보관함
이온디
첨부파일 https://imweb.eond.com/webtip/218456
사용자 삽입 이미지  글제목 왼쪽 달력 부분에 마우스를 올려보세요. 날짜 부분이 변경되죠? 이 소스를 알아보도록 하겠습니다.
테이블이나 글자, DIV 등 어떤 요소든 가리지 않습니다.

1) 테이블에 나타내고자 하신다면,

<Table><TR><TD onMouseOver="this.style.backgroundColor='lightgreen'" onMouseOut="this.style.backgroundColor=''">내용</TD></TR> </Table>

테이블 셀 배경색을 마우스를 올렸을 때 lightgreen으로 변경합니다.

2) 링크가 걸린 글자에 나타내고자 하신다면,

<a href="#" onmouseover="this.style.fontWeight='bold';this.style.color='#FF0000';" onmouseout="this.style.fontWeight='';this.style.color='';">이온디</a>

  글자 부분에 마우스를 올렸을 때 글자 색을 #FF0000 으로, 글자굵기를 굵게 변경하고,
마우스가 글자 부분에서 벗어났을 때는 아무런 스타일을 주지 않습니다.

이렇게 this.style.원하는스타일 과 같은 형식으로 배경색/폰트스타일/글자색 등을 다양하게 줄 수 있습니다.
스타일을 적용할 때 작은따옴표, 큰따옴표를 주의해서 사용하세요.
onmouseover 전체를 감싸는 것은 큰따옴표(")이고, 스타일시트의 형태를 지정하는 부분은 따로 작은따옴표(')로 감싸주어 구분을 합니다.


이제 위에서는 직접 스타일시트를 적어줬다면, 아래는 class로 주는 방법을 알아보겠습니다.

3) DIV에 마우스를 올렸을 때,

<div class="calendar" onMouseOver="this.className='calendarOver'" onMouseOut="this.className='calendar'"><script type="text/javascript">write_calender("[##_article_rep_date_##]");</script></div>

  위의 예제들과는 달리 this.className 으로 스타일을 줄 수 있습니다.
이렇게 클래스로 적용할 때는 css 파일 내에 클래스명을 적어주어야 합니다.
큰따옴표, 작은따옴표 구분이 있어 복잡한데 이렇게 class를 이용해 소스가 간단해지니 실수할 일도 줄어들겠죠.

  적용하는 부분에는 위와 같이 해주었다면 클래스는 다음과 같이 해주어야 합니다.

<style>
.calendar { color:#f0f0f0; font:bold 14px Tahoma; margin-top:4px; text-align:center; width:35px; } //calendarOut과 같으니 그냥 calendar로 했습니다.
.calendarOver {color:#FFFFFF; font:9px Tahoma; margin-top:4px; text-align:center; width:35px;}
</style>

이렇게 클래스를 따로 만들어주시면 적용이 끝납니다.

4) DIV 안에 DIV 로 감싼 영역까지 적용을 시키려면 어떻게 해야할까?

  자, 위에까지만 하시면 기본적인 사용법은 끝이 납니다. 이제부터는 좀 더 심화반으로 넘어가보겠습니다.
잠깐만 다시 위로 거슬러 올라가서 위의 DIV 안에서의 코드를 살펴보시면 다음과 같은 내용이 보입니다.

<div class="calendar" onMouseOver="this.className='calendarOver'" onMouseOut="this.className='calendar'"><script type="text/javascript">write_calender("[##_article_rep_date_##]");</script></div>

노란색으로 형광색칠한 부분, 바로 <script>..</script> 인데요, 저 스크립트의 내용을 살짝 살펴보자면,

document.write("<div class='content_title_calender_month'><B>" + month + "</B></div>");
document.write("<div class='content_title_calender_day'><B>" + day + "</B></div>");

이렇게 <div class="calendar" .. >로 감싼 부분 안에 또 다시 <div class='content_title_calender_month'> .. 가 있는 게 보입니다. 이렇게 2번 DIV로 감싼 영역은 스타일시트 클래스를 어떻게 하느냐면,

    .entry .calendar { float:left; width:40px; height:46px; background:url(./images/entry_calendar.gif) no-repeat 2px 1px; }
    .entry .calendar .content_title_calender_month { color:#f0f0f0; font:9px Tahoma; margin-top:4px; text-align:center; width:35px;}
    .entry .calendar .content_title_calender_day { color:#b9b7b7; font:bold 14px Tahoma; margin-top:4px; text-align:center; width:35px; }
   
    .entry .calendarOver { float:left; width:40px; height:46px; background:url(./images/entry_calendar.gif) no-repeat 2px 1px; }
    .entry .calendarOver .content_title_calender_month { color:#f0f0f0; font:9px Tahoma; margin-top:4px; text-align:center; width:35px;}
    .entry .calendarOver .content_title_calender_day { color:#FFFFFF; font:bold 14px Tahoma; margin-top:4px; text-align:center; width:35px; }

위는 <div class="entry"> 안에 <div class="calendar"> 안에 <div class="content_title_calender_month"> 로 3번 감싼 영역이라 앞에 .entry 가 하나 더 붙어있습니다.
그리고 OnMouseOver 했을 때의 클래스도 함께 적어주어야 하므로 코드가 좀 깁니다.
이렇게 해줘야지 div 안에 감싼 영역까지 제대로 표시가 되는 겁니다. 끝~*

 
코멘트 1
접기/펴기 | 댓글 새로고침
  • a
    css의 hover를 쓰시면 더 간단합니다...
    오후 04:35
    댓글
    수정
    삭제
 
 
Total 683 articles in 16 / 57 pages
번호 제목 제목 조회 수 날짜날짜
503 [웹로그] 홈페이지나 블로그에 MSN 대화창 삽입하기 혹은 MSN 로그인 상태 보여주기 7516 2007/11/18
502 [기본] 홈페이지나 블로그에 MSN 대화창 삽입하기 혹은 MSN 로그인 상태 보여주기 4874 2007/11/18
501 [웹로그] Windows Live Writer 사용해보기 파일 [1] 5593 2007/11/18
500 [기본] Windows Live Writer 사용해보기 파일 [1] 4792 2007/11/18
499 [웹로그] BlogAPI를 이용해서 제로보드XE에 글 올리기 11275 2007/11/18
498 [기본] BlogAPI를 이용해서 제로보드XE에 글 올리기 7614 2007/11/18
497 [웹로그] Daum 캘린더로 수능 일정 공유해요! 파일 [2] 8129 2007/11/20
496 [기본] Daum 캘린더로 수능 일정 공유해요! 파일 [2] 6407 2007/11/20
495 무료 FTP 사이트 29821 2007/11/20
494 [웹로그] Windows 고전(흑) 테마 파일 6194 2007/11/20
493 [기본] Windows 고전(흑) 테마 파일 4940 2007/11/20
492 [웹로그] Daum 캘린더, 이런 기능 어떨까? [2] 6607 2007/11/20

해시태그 디렉터리

오늘의 핫게시물