반응형
치환자로 HTML 구조 작성
이미 카테고리가 작성 돼있는경우 생략하면 된다.skin.html
에서 티스토리 치환자 ##_category_list_##
를 이용해 HTML구조를 작성한다.
https://tistory.github.io/document-tistory-skin/sidebar/category.html

JS파일에 스크립트작성(Jquery)
스킨파일에 임포트
<head>
안에 <script src="./images/common.js"></script>
추가하기
dropdown코드작성
- 먼저
sub_category_list
이름의 2차 카테고리를 가진 1차 카테고리에has-ch
클래스를 추가하고 - 2차카테고리를 가진 1차카테고리의 링크이동을 막고(e.preventDefault)
active
클래스가 없으면active
클래스를 추가하고 2차 카테고리를 slideDown으로 보여준다.active
클래스가 있으면active
클래스를 제거하고 2차 카테고리를 slideUp으로 숨겨준다.
$(document).ready(function(){ // has-ch $(".sub_category_list").each(function(index, item){ $(this).siblings(".link_item").addClass("has-ch"); }); // dropdown $(".category .has-ch").on("click", function (e) { var element = $(this); console.log("child 있음"); e.preventDefault(); if (!element.hasClass("active")) { element.addClass("active"); element.siblings(".sub_category_list").slideDown(200); } else { element.removeClass("active"); element.siblings(".sub_category_list").slideUp(200); } }); });
스킨편집에서 JS파일추가
관리 > 스킨편집 > HTML 수정 > 파일 업로드 > 추가
URL 경로는 티스토리ID.tistory.com/manage/design/skin/edit#/


로컬에서 작성한 common.js 파일을 업로드하면 티스토리스킨내에서 자동으로 images
폴더안에 넣어진다.
CSS 작성
has-ch
클래스 스타일(하위 메뉴가 있는 1차 메뉴)
관리 > 스킨편집 > HTML 수정 > CSS
에서 다음코드를 아무데나 추가한다.
- remixicon을 추가하고
active
클래스가 있을때 180도 회전하는 애니메이션 추가
@import url('https://cdn.jsdelivr.net/npm/remixicon@3.5.0/fonts/remixicon.css'); .link_item.has-ch { position: relative; } .link_item.has-ch::after { content: "\ea4e"; right:24px; top:50%; transform: translateY(-50%); font-size: 14px; transition: .3s ease-in-out; position: absolute; font-family: remixicon!important; font-style: normal; -webkit-font-smoothing: antialiased; } .link_item.has-ch.active::after { transform: translateY(-50%) rotate(-180deg); }
2차 메뉴 숨김
CSS에 다음을 마저 추가한다.display: none
을 해주어야 2차메뉴를 숨겨주고 클릭했을때 보여줄수 있다.
.sub_category_list {display: none;}
완성


적용 전에는 2차메뉴가 다 펼쳐져서 메뉴가 길었는데
적용 후 한층 정돈된 느낌이 든다.
반응형
'Frontend > UIUX' 카테고리의 다른 글
[티스토리 스킨 만들기] 게시판 리스트에 기본썸네일 지정 (1) | 2024.06.13 |
---|---|
어도비 XD 설치된 폰트 활성화 안될때 해결방법 (0) | 2024.01.23 |
[highlight.js] 티스토리 코드블럭 색, 라인넘버 넣기 (0) | 2023.08.25 |