Jak dodać zakładkę w HTML?

Aby dodać zakładkę w HTML, możesz skorzystać z dwóch popularnych podejść:

  • zakładki jako interaktywne „taby” przełączające widok poszczególnych sekcji bez przeładowania strony,
  • zakładki jako odnośniki do konkretnych miejsc (anchor) w obrębie tej samej strony.

W poniższym poradniku przedstawiam oba sposoby z praktycznymi przykładami i wyjaśnieniem.

Zakładki jako „taby” – przełączalne sekcje

Ten typ zakładek umożliwia użytkownikowi wygodne przeglądanie różnych treści, które są ukryte lub pokazywane po kliknięciu odpowiedniej etykiety. Rozwiązanie takie często spotyka się w panelach ustawień, kart produktowych czy FAQ.

Przykład prostego menu zakładek w HTML i CSS

<!DOCTYPE html>
<html lang="pl">
<head>
  <meta charset="UTF-8">
  <title>Zakładki w HTML</title>
  <style>
    ul.tabs { list-style: none; margin: 0; padding: 0; display: flex; border-bottom: 2px solid #ccc; }
    ul.tabs li { margin: 0; }
    ul.tabs li a { display: block; padding: 10px 30px; background: #f3f3f3; border: 1px solid #ccc; border-bottom: none; text-decoration: none; color: #333; border-radius: 10px 10px 0 0; margin-right: 3px; }
    ul.tabs li a.active, ul.tabs li a:hover { background: #fff; font-weight: bold; color: #0073e6; border-bottom: 2px solid #fff; }
    .tab-content { display: none; border: 1px solid #ccc; padding: 20px; border-radius: 0 0 10px 10px; }
    .tab-content.active { display: block; }
  </style>
</head>
<body>
  <ul class="tabs">
    <li><a href="#tab1" class="active">Zakładka 1</a></li>
    <li><a href="#tab2">Zakładka 2</a></li>
    <li><a href="#tab3">Zakładka 3</a></li>
  </ul>

  <div id="tab1" class="tab-content active">
    <h3>Treść zakładki 1</h3>
    <p>Opis lub zawartość pierwszej sekcji.</p>
  </div>
  <div id="tab2" class="tab-content">
    <h3>Treść zakładki 2</h3>
    <p>Tekst drugiej sekcji.</p>
  </div>
  <div id="tab3" class="tab-content">
    <h3>Treść zakładki 3</h3>
    <p>Zawartość trzeciej zakładki.</p>
  </div>

  <script>
    const tabLinks = document.querySelectorAll('.tabs a');
    const tabContents = document.querySelectorAll('.tab-content');
    tabLinks.forEach(link => {
      link.addEventListener('click', function(e) {
        e.preventDefault();
        tabLinks.forEach(l => l.classList.remove('active'));
        tabContents.forEach(tab => tab.classList.remove('active'));
        link.classList.add('active');
        const target = document.querySelector(link.getAttribute('href'));
        target.classList.add('active');
      });
    });
  </script>
</body>
</html>

Wyjaśnienie działania

  • każda zakładka jest elementem listy i zawiera odnośnik do div z odpowiednią treścią (id: tab1, tab2, itd.),
  • za pomocą CSS i JavaScript pokazujemy tylko wybraną zakładkę, ukrywając pozostałe,
  • pozwala to dynamicznie przełączać widoki bez przeładowania strony.

Zastosowania

  • karty produktowe (np. „Opis”, „Dane techniczne”, „Opinie”)
  • panele ustawień i formularze wieloetapowe
  • FAQ i zestawienia informacji

Zakładki jako odnośniki do sekcji (tzw. kotwice)

Taki mechanizm wykorzystuje znaczniki id oraz linki wewnętrzne <a>, pozwalając na „skakanie” do konkretnych fragmentów strony.

Przykład kodu

<ul>
  <li><a href="#sekcja1">Przejdź do sekcji 1</a></li>
  <li><a href="#sekcja2">Przejdź do sekcji 2</a></li>
  <li><a href="#sekcja3">Przejdź do sekcji 3</a></li>
</ul>

<h2 id="sekcja1">Sekcja 1</h2>
<p>Treść pierwszej sekcji...</p>
<h2 id="sekcja2">Sekcja 2</h2>
<p>Treść drugiej sekcji...</p>
<h2 id="sekcja3">Sekcja 3</h2>
<p>Treść trzeciej sekcji...</p>

Opis działania

  • kliknięcie w link „Przejdź do sekcji 2” przenosi użytkownika bezpośrednio do nagłówka Sekcja 2,
  • mechanizm ten jest wbudowany w HTML i nie wymaga dodatkowego CSS czy JavaScriptu.

Przykładowe użycia

  • spisy treści do długich dokumentów lub artykułów
  • FAQ z szybkim dostępem do każdego pytania
  • portfolio lub strony „One Page” z wieloma sekcjami

Wskazówki praktyczne

  • Warstwa wizualna – zakładki możesz stylizować za pomocą CSS, dodając kolory, animacje lub ikony;
  • Dostępność (accessibility) – korzystaj z semantycznych znaczników i atrybutów ARIA, aby zakładki były czytelne dla czytników ekranu;
  • Responsywność – sprawdź wygląd zakładek na telefonach i tabletach, aby zapewnić dobrą obsługę dotykiem.

Dzięki powyższym przykładom z łatwością dodasz zarówno zakładki przełączające widok (taby), jak i proste zakładki-kotwice ułatwiające nawigację w obrębie strony. To wygodne i intuicyjne rozwiązania, regularnie stosowane w nowoczesnych serwisach internetowych.

Programista i twórca serwisu Creative Coding, absolwent Politechniki Warszawskiej (WEiTI). Od 10+ lat łączy front‑end, grafikę generatywną i narzędzia dla twórców; opublikował 120+ projektów i artykułów, prowadził warsztaty dla 2 000+ uczestników. Pracuje z JavaScriptem, Three.js, P5.js i GLSL, bada wydajność i dokumentuje procesy, tworząc praktyczne przewodniki dla osób łączących kod z obrazem, dźwiękiem i interakcją.
Zostaw komentarz

Komentarze

Brak komentarzy. Dlaczego nie rozpoczniesz dyskusji?

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *