만드는 방법: 수직 탭 페이지
CSS와 JavaScript를 사용하여 수직 탭 메뉴를 만들어보는 방법을 배웁니다.
수직 탭 페이지
탭 페이지는 단일 페이지 웹 애플리케이션 또는 다른 주제를 표시할 수 있는 웹 페이지에 매우 적합합니다.
런던
런던은 영국의 수도 도시입니다.
파리
파리는 프랑스의 수도입니다.
도쿄
도쿄는 일본의 수도입니다.
가로 탭을 생성합니다
첫 번째 단계 - HTML 추가:
<div class="tab"> <button class="tablinks" onclick="openCity(event, 'London')">런던</button> <button class="tablinks" onclick="openCity(event, 'Paris')">파리</button> <button class="tablinks" onclick="openCity(event, 'Tokyo')">도쿄</button> </div> <div id="London" class="tabcontent"> <h3>런던</h3> <p>런던은 영국의 수도 도시입니다.</p> </div> <div id="Paris" class="tabcontent"> <h3>파리</h3> <p>파리는 프랑스의 수도입니다.</p> </div> <div id="Tokyo" class="tabcontent"> <h3>도쿄</h3> <p>도쿄는 일본의 수도입니다.</p> </div>
특정 탭 페이지 내용을 열기 위한 버튼을 생성합니다. 모든 class="tabcontent"
의 <div>
요소는 기본적으로 숨겨져 있습니다(CSS와 JS를 통해). 사용자가 버튼을 클릭할 때, 그 버튼과 일치하는 탭 페이지 내용이 열립니다.
두 번째 단계 - CSS 추가:
버튼과 탭 페이지 내용의 스타일을 설정합니다:
* {box-sizing: border-box} /* 탭 스타일 설정 */ .tab { float: left; border: 1px solid #ccc; background-color: #f1f1f1; width: 30%; height: 300px; } /* 설정된 태그 페이지 내용을 열기 위한 버튼 스타일 */ .tab button { display: block; background-color: inherit; color: black; padding: 22px 16px; width: 100%; border: none; outline: none; text-align: left; cursor: pointer; transition: 0.3s; } /* 更改悬停时按钮的背景颜色 */ .tab button:hover { background-color: #ddd; } /* 创建活动/当前的“标签页按钮”类 */ .tab button.active { background-color: #ccc; } /* 设置标签页内容的样式 */ .tabcontent { float: left; padding: 0px 12px; border: 1px solid #ccc; width: 70%; border-left: none; height: 300px; }
제3단계 - JavaScript 추가:
function openCity(evt, cityName) { // 声明所有变量 var i, tabcontent, tablinks; // 获取所有带有 class="tabcontent" 的元素并隐藏它们 tabcontent = document.getElementsByClassName("tabcontent"); for (i = 0; i < tabcontent.length; i++) { tabcontent[i].style.display = "none"; } // 获取所有带有 class="tablinks" 的元素并删除 "active" 类 tablinks = document.getElementsByClassName("tablinks"); for (i = 0; i < tablinks.length; i++) { tablinks[i].className = tablinks[i].className.replace(" active", ""); } // 显示当前标签页,并向打开标签页的链接添加 "active" 类 document.getElementById(cityName).style.display = "block"; evt.currentTarget.className += " active"; }
관련 페이지
강의:수평 탭 생성 방법