탭메뉴

링크

<t (228)
보통의 경우 탭메뉴는 li 를 사용해 float:left 혹은 float:right; 를 사용해 아래와 같은 형식으로 표현하죠
메뉴1 메뉴2 메뉴3  

이런경우의 소스는 참 많지요.. jquery ui만 둘러봐도 이것저것 많은데.. 만약에

메뉴1 메뉴2 메뉴3 메뉴4

위와 같은 형식으로 100%를 주려면.. px계산하느라 애좀 먹겠지요.. 1px정도 차이가 자꾸날겁니다. 그래서 편하게 테이블로 맹구러버렸습니다..

/*탭메뉴관련 CSS*/
.tab_menu { text-align:center; padding:3px 2px;}
.tab_menu_first_on {
 border:1px solid #cccccc;
 border-bottom:none;
 background-color:#ffffff;
 cursor:normal;
}
.tab_menu_first_off {
 border:1px solid #cccccc;
 background-color:#f1f1f1;
 cursor:pointer;
}
.tab_menu_other_on {
 border-top :1px solid #cccccc;
 border-right:1px solid #cccccc;
 background-color:#ffffff;
 cursor:normal;
}
.tab_menu_other_off {
 border:1px solid #cccccc;
 border-left:none;
 background-color:#f1f1f1;
 cursor:pointer;
}
.tab_content { border:1px solid #cccccc; border-top:none;}
.tab_content_on {display:block;}
.tab_content_off {display:none;}
.tab_button_more {clear:both; padding-top:5px; text-align:right;}

/*탭메뉴관련 script*/
 $(document).ready(function(){
  $(".tab_menu").click(function(){
   var now_menu = $(this).attr('id');
   var now_cont = now_menu.replace('tab_menu_','tab_cont_');
   var id = now_menu.substring(0, now_menu.length - 3);
   var idx = $('#'+id).find('.tab_menu').index(this);

   if(idx == 0){
    $('#'+id).find('.tab_menu:gt(0)').removeClass('tab_menu_other_on').addClass('tab_menu_other_off');
    $('#'+id).find('.tab_menu:eq(0)').removeClass('tab_menu_first_off').addClass('tab_menu_first_on');
   } else {
    $('#'+id).find('.tab_menu:eq(0)').removeClass('tab_menu_first_on').addClass('tab_menu_first_off');
    $('#'+id).find('.tab_menu:gt(0)').removeClass('tab_menu_other_on').addClass('tab_menu_other_off');
    $('#'+now_menu).removeClass('tab_menu_other_off').addClass('tab_menu_other_on');
   }

   $('#'+id).find('.tab_content').removeClass('tab_content_on').addClass('tab_content_off');
   $('#'+now_cont).removeClass('tab_content_off').addClass('tab_content_on');
  });
 });
/*
탭메뉴관련 html  앞의 test를 다른걸로 바꾸시면 되며
tab1_tab_menu, tab2_tab_menu등으로 여러개를 동시에 사용가능합니다.
또 중요한건 큰테이블의 아이디는 'xxxxxx_tab_menu'
탭메뉴들의 아이디는 'xxxxxx_tab_menu_01~99' 01~99는 영문이든 숫자든 상관없으며 2자리로 구성해주세요..
탭내용들의 아이디는 'xxxxxx_tab_cont_01~99' 01~99는 영문이든 숫자든 상관없으며 2자리로 구성해주세요.. 단 맵메뉴의 아이디 끝 두자리와 일치해야합니다.
*/
 <table border=0 width=100% cellpadding=0 cellspacing=0 id='test_tab_menu'>
 <tr>
  <td width=25% id='test_tab_menu_01' class='tab_menu tab_menu_first_on'>내용1</td>
  <td width=25% id='test_tab_menu_02' class='tab_menu tab_menu_other_off'>내용2</td>
  <td width=25% id='test_tab_menu_03' class='tab_menu tab_menu_other_off'>내용3</td>
  <td width=25% id='test_tab_menu_04' class='tab_menu tab_menu_other_off'>내용4</td>
 </tr>
 <tr>
  <td colspan=4>
  <table border=0 width=100% cellpadding=0 cellspacing=0 id='test_tab_cont_01' class='tab_content tab_content_on'>
  <tr>
   <td style='padding:10px 5px;'>내용1 내용1</td>
  </tr>
  </table>
  <table border=0 width=100% cellpadding=0 cellspacing=0 id='test_tab_cont_02' class='tab_content tab_content_off'>
  <tr>
   <td style='padding:10px 5px;'>내용2 내용2</td>
  </tr>
  </table>
  <table border=0 width=100% cellpadding=0 cellspacing=0 id='test_tab_cont_03' class='tab_content tab_content_off'>
  <tr>
   <td style='padding:10px 5px;'>내용2 내용3</td>
  </tr>
  </table>
  <table border=0 width=100% cellpadding=0 cellspacing=0 id='test_tab_cont_04' class='tab_content tab_content_off'>
  <tr>
   <td style='padding:10px 5px;'>내용2 내용4</td>
  </tr>
  </table>
  </td>
 </tr>
 </table>

혹시 div코딩으로 처리가능하신분은 올려주세요.. 하다하다 안되서
테이블 코딩해버린겁니다 ㅎㅎ;;
css코딩이 허접한지라.. ㅠ.ㅠ

[이 게시물은 관리자님에 의해 2011-10-31 16:55:28 jQuery에서 이동 됨]
|

댓글 4개

float:left로 쭉 정렬해서 하면 안 될까요?ㅎㅎ


<style>
.tab_menu {float:left;}
</style>

<div id='test_tab_menu'>
<div id='test_tab_menu_01' class='tab_menu tab_menu_first_on'>내용1</div>
<div id='test_tab_menu_02' class='tab_menu tab_menu_first_off'>내용2</div>
<div id='test_tab_menu_03' class='tab_menu tab_menu_first_off'>내용3</div>
<div id='test_tab_menu_04' class='tab_menu tab_menu_first_off'>내용4</div>
<div>
탭메뉴가 뭔가요?

혹시 상단에 있는 홈/로그인/로그아웃/회원가입-----------이 메뉴 인가요?
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
15년 전 조회 1,939
15년 전 조회 2,426
16년 전 조회 1,501
16년 전 조회 2,433
16년 전 조회 1,761
16년 전 조회 1,867
16년 전 조회 1,517
16년 전 조회 2,213
16년 전 조회 1,545
16년 전 조회 1,958
16년 전 조회 2,139
16년 전 조회 1,215
16년 전 조회 1,284
16년 전 조회 1,934
16년 전 조회 5,375
16년 전 조회 1,676
16년 전 조회 2,191
16년 전 조회 2,378
16년 전 조회 1,534
16년 전 조회 1,339
16년 전 조회 2,260
16년 전 조회 4,974
16년 전 조회 2,241
16년 전 조회 2,902
16년 전 조회 1,777
16년 전 조회 3,634
16년 전 조회 4,470
16년 전 조회 3,134
16년 전 조회 2,382
16년 전 조회 2,471
16년 전 조회 2,711
16년 전 조회 2,208
16년 전 조회 5,546
16년 전 조회 3,397
16년 전 조회 1,389
16년 전 조회 1,735
16년 전 조회 5,107
16년 전 조회 2,347
16년 전 조회 3,438
16년 전 조회 2,682
16년 전 조회 1,591
16년 전 조회 5,394
16년 전 조회 2,508
16년 전 조회 6,000
16년 전 조회 1,970
16년 전 조회 4,053
16년 전 조회 3,066
16년 전 조회 2,258
16년 전 조회 2,264
16년 전 조회 4,430
16년 전 조회 3,334
16년 전 조회 2,862
16년 전 조회 3,005
16년 전 조회 2,127
16년 전 조회 1,804
16년 전 조회 1,718
16년 전 조회 1,435
16년 전 조회 1,703
16년 전 조회 1,940
16년 전 조회 1,636
16년 전 조회 4,880
16년 전 조회 3,860
16년 전 조회 1,833
16년 전 조회 1,568
16년 전 조회 2,313
16년 전 조회 4,551
16년 전 조회 3,582
16년 전 조회 2,608
16년 전 조회 4,365
16년 전 조회 3,230
16년 전 조회 1,393
16년 전 조회 1,410
16년 전 조회 2,065
16년 전 조회 1,910
16년 전 조회 2,602
16년 전 조회 2,258
16년 전 조회 1,403
16년 전 조회 4,417
16년 전 조회 1,513
16년 전 조회 1,811
16년 전 조회 2,235
16년 전 조회 3,869
16년 전 조회 2,763
16년 전 조회 1,523
16년 전 조회 4,044
16년 전 조회 1,429
16년 전 조회 1,611
16년 전 조회 1,279
16년 전 조회 1,748
16년 전 조회 1,648
16년 전 조회 1,661
16년 전 조회 1,450
16년 전 조회 2,215
16년 전 조회 1,845
16년 전 조회 2,003
16년 전 조회 2,208
16년 전 조회 1,505
16년 전 조회 2,339
16년 전 조회 2,277
16년 전 조회 4,563