Cách thực hiện - Tab dọc
Tìm hiểu cách tạo menu tab dọc bằng CSS và JavaScript.
Tab dọc
Các tab hoàn hảo cho các ứng dụng web một trang hoặc cho các trang web có khả năng hiển thị các chủ đề khác nhau.
Tạo các tab dọc có thể chuyển đổi
Bước 1) Thêm HTML:
Thí dụ
<div class="tab">
<button class="tablinks" onclick="openCity(event,
'London')">London</button>
<button class="tablinks" onclick="openCity(event,
'Paris')">Paris</button>
<button class="tablinks" onclick="openCity(event,
'Tokyo')">Tokyo</button>
</div>
<div id="London" class="tabcontent">
<h3>London</h3>
<p>London is the capital city of England.</p>
</div>
<div
id="Paris" class="tabcontent">
<h3>Paris</h3>
<p>Paris
is the capital of France.</p>
</div>
<div id="Tokyo" class="tabcontent">
<h3>Tokyo</h3>
<p>Tokyo is the capital of Japan.</p>
</div>
Tạo các nút để mở nội dung tab cụ thể. Tất cả các phần tử <div> với class="tabcontent"
đều bị ẩn theo mặc định (với CSS & JS) - khi người dùng nhấp vào một nút - nó sẽ mở ra nội dung tab phù hợp với nút này.
Bước 2) Thêm CSS:
Tạo kiểu cho các nút và nội dung tab:
Thí dụ
* {box-sizing: border-box}
/* Style the tab */
.tab {
float: left;
border: 1px solid #ccc;
background-color: #f1f1f1;
width: 30%;
height: 300px;
}
/* Style the buttons that are used to open the tab content */
.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;
}
/* Change
background color of buttons on hover */
.tab button:hover {
background-color: #ddd;
}
/* Create an active/current "tab button"
class */
.tab button.active {
background-color:
#ccc;
}
/* Style the tab content */
.tabcontent {
float: left;
padding: 0px 12px;
border: 1px solid #ccc;
width: 70%;
border-left: none;
height: 300px;
}
Bước 3) Thêm JavaScript:
Thí dụ
function openCity(evt, cityName) {
// Declare all
variables
var i, tabcontent, tablinks;
// Get all elements with class="tabcontent" and hide them
tabcontent
= document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
// Get all elements with class="tablinks" and remove
the class "active"
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i <
tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
// Show the current tab, and add an "active" class to
the link that opened the tab
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
}
Mẹo: Cũng xem Cách thực hiện - Tab ngang .