Cách tạo: Tab
- Trang trước Trình cuộn
- Trang tiếp theo Tab dọc
Học cách sử dụng CSS và JavaScript để tạo tab chọn.
Tab
Tab rất phù hợp với ứng dụng web trang đơn hoặc có thể hiển thị các chủ đề khác nhau của trang web:
London
London là thành phố thủ đô của Anh.
Paris
Paris là thủ đô của Pháp.
Tokyo
Tokyo là thủ đô của Nhật Bản.
Tạo tab thay đổi được
Bước 1 - Thêm HTML:
<!-- Liên kết tab --> <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> <!-- Nội dung tab --> <div id="London" class="tabcontent"> <h3>London</h3> <p>London là thủ đô của Anh.</p> </div> <div id="Paris" class="tabcontent"> <h3>Paris</h3> <p>Paris là thủ đô của Pháp.</p> </div> <div id="Tokyo" class="tabcontent"> <h3>Tokyo</h3> <p>Tokyo là thủ đô của Nhật Bản.</p> </div>
Tạo nút để mở nội dung của thẻ tab cụ thể. Tất cả các phần tử có class="tabcontent"
của <div>
Các phần tử mặc định đều ẩn (qua CSS và JS). Khi người dùng nhấp vào nút, nó sẽ mở nội dung của thẻ tab "khớp" với nút đó.
Bước 2 - Thêm CSS:
Đặt样式 cho nút và nội dung của thẻ tab:
/* Đặt样式 cho thẻ tab */ .tab { overflow: hidden; border: 1px solid #ccc; background-color: #f1f1f1; } /* Đặt样式 cho nút mở nội dung của thẻ tab */ .tab button { background-color: inherit; float: left; border: none; outline: none; cursor: pointer; padding: 14px 16px; transition: 0.3s; } /* Thay đổi màu nền của nút khi di chuột qua */ .tab button:hover { background-color: #ddd; } /* Tạo lớp liên kết thẻ tab hoạt động/trang hiện tại */ .tab button.active { background-color: #ccc; } /* Đặt样式 cho nội dung của thẻ tab */ .tabcontent { display: none; padding: 6px 12px; border: 1px solid #ccc; border-top: none; }
Bước 3 - Thêm JavaScript:
function openCity(evt, cityName) { // Định nghĩa tất cả các biến var i, tabcontent, tablinks; // Lấy tất cả các phần tử có class="tabcontent" và ẩn chúng tabcontent = document.getElementsByClassName("tabcontent"); for (i = 0; i < tabcontent.length; i++) { tabcontent[i].style.display = "none"; } // Lấy tất cả các phần tử có class="tablinks" và xóa lớp "active" tablinks = document.getElementsByClassName("tablinks"); for (i = 0; i < tablinks.length; i++) { tablinks[i].className = tablinks[i].className.replace(" active", ""); } // Hiển thị thẻ trang hiện tại và thêm lớp "active" vào nút mở thẻ trang document.getElementById(cityName).style.display = "block"; evt.currentTarget.className += " active"; }
Mờ vào thẻ trang
Để mờ vào nội dung thẻ trang, hãy thêm CSS sau đây:
.tabcontent { animation: fadeEffect 1s; /* Hiệu ứng mờ vào và mờ ra kéo dài 1 giây */ } /* Tăng từ độ trong suốt bằng không lên không trong suốt */ @keyframes fadeEffect { from {opacity: 0;} to {opacity: 1;} }
Hiển thị thẻ trang mặc định
Để mở thẻ trang cụ thể khi trang được tải, hãy sử dụng JavaScript "nhấn" vào nút thẻ trang được chỉ định:
<button class="tablinks" onclick="openCity(event, 'London')" id="defaultOpen">London</button> <script> // Lấy phần tử có id="defaultOpen" và nhấn vào nó document.getElementById("defaultOpen").click(); </script>
Đóng thẻ trang
Nếu bạn muốn đóng thẻ trang cụ thể, hãy sử dụng JavaScript bằng cách nhấn vào nút để ẩn thẻ trang:
<!-- Nhấn vào phần tử <span> để đóng thẻ trang --> <div id="London" class="tabcontent"> <h3>London</h3> <p>London là thủ đô của Anh.</p> <span onclick="this.parentElement.style.display='none'">x</span> </div>
Trang liên quan
Hướng dẫn:Cách tạo tab dọc
- Trang trước Trình cuộn
- Trang tiếp theo Tab dọc