Panduan lengkap elemen semantik HTML untuk pengembangan web modern
Elemen semantik HTML5 memberikan makna pada konten web, meningkatkan aksesibilitas dan SEO.
<header>
<h1>Judul Website</h1>
<nav>
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
</ul>
</nav>
</header>
<main>
<article>
<h2>Judul Artikel</h2>
<p>Konten artikel...</p>
</article>
</main>
<footer>
<p>© 2023 Website Saya</p>
</footer>
🔍 Penjelasan Detail:
• <header>
- Bagian kepala dokumen atau section
• <nav>
- Berisi navigasi utama
• <main>
- Konten utama yang unik di halaman
• <article>
- Konten mandiri yang bisa berdiri sendiri
• <footer>
- Bagian kaki dokumen atau section
• <section>
- Pengelompokan konten tematik
• <aside>
- Konten terkait tapi tidak langsung (sidebar)
Gunakan hanya satu <main>
per halaman, dan jangan letakkan di dalam elemen semantik lain seperti <article>
atau <section>
!
HTML5 memperkenalkan elemen semantik tambahan untuk struktur yang lebih spesifik.
<figure>
<img src="image.jpg" alt="Deskripsi">
<figcaption>Keterangan gambar</figcaption>
</figure>
<details>
<summary>Klik untuk detail</summary>
<p>Konten tambahan yang bisa dibuka/tutup</p>
</details>
<time datetime="2023-10-15">15 Oktober 2023</time>
<mark>Teks yang ditandai</mark>
<progress value="70" max="100">70%</progress>
🔍 Penjelasan Detail:
• <figure>
dan <figcaption>
- Untuk gambar dengan keterangan
• <details>
dan <summary>
- Membuat konten yang bisa dibuka/tutup
• <time>
- Menandai waktu/tanggal dengan format mesin (datetime
)
• <mark>
- Menyoroti teks penting
• <progress>
- Menampilkan progress bar
• <meter>
- Menampilkan pengukuran dalam range
• <dialog>
- Membuat dialog/modal box
Gunakan atribut role
untuk meningkatkan aksesibilitas ketika elemen semantik HTML5 tidak cukup, contoh: <div role="navigation">
Struktur semantik yang baik meningkatkan aksesibilitas, SEO, dan maintainability kode.
<body>
<header>
<h1>Judul Website</h1>
<nav>...</nav>
</header>
<main>
<article>
<h2>Judul Artikel</h2>
<section>
<h3>Subjudul</h3>
<p>Konten section...</p>
</section>
</article>
<aside>
<h2>Related Links</h2>
<ul>...</ul>
</aside>
</main>
<footer>
<p>© 2023</p>
</footer>
</body>
🔍 Penjelasan Detail:
• Hierarki heading yang tepat (h1
sampai h6
)
• <main>
sebagai konten utama yang unik
• <article>
untuk konten mandiri yang bisa disindikasi
• <section>
untuk pengelompokan tematik dengan heading
• <aside>
untuk konten sekunder/sidebar
• <header>
dan <footer>
bisa digunakan di level dokumen atau section
• Hindari penggunaan <div>
berlebihan ketika ada elemen semantik yang sesuai
Gunakan validator HTML (seperti validator.w3.org) untuk memeriksa struktur semantik Anda dan pastikan heading mengikuti urutan logis (tidak melompat level)!