Menu

Tag span HTML: Mengatur Gaya Sebagian Teks, dan div vs span

Tag <span> adalah container inline umum: tag ini membungkus beberapa kata di dalam satu baris supaya kamu bisa mengatur gayanya atau memakainya di script tanpa memutus baris. Pelajari cara memakainya, bedanya dengan div, dan kapan tag yang lebih spesifik lebih cocok.

Halaman ini dilengkapi editor yang bisa dijalankan. Edit, jalankan, dan lihat output-nya seketika.

Fungsi tag span

<span> membungkus sepotong teks di dalam satu baris supaya kamu bisa mengatur gayanya atau menemukannya dengan JavaScript. Tag ini adalah kembaran inline dari <div>: tidak punya makna, tidak punya tampilan default, dan tidak memulai baris baru.

Kalimatnya tetap di satu baris. Hanya kata yang dibungkus yang berubah.

div vs span

Keduanya punya tujuan yang sama (container tanpa makna) dan berbeda dalam cara menempatkan diri di halaman:

Div memecah kalimat menjadi tiga baris dan merentang sepanjang halaman; span tetap berada di dalam kalimat dan memeluk teksnya.

<div><span>
DisplayBlockInline
Memulai baris baruYaTidak
LebarSeluruh lebar yang tersediaSelebar isinya
width, height, margin vertikalDiterapkanDiabaikan
Bisa berisiApa saja, termasuk blockHanya teks dan elemen inline
Penggunaan umumBagian, kartu, pembungkus layoutSatu kata atau frasa di dalam teks

Satu perbedaan lagi: <div> tidak boleh berada di dalam <p>, dan browser menutup paragrafnya lebih awal kalau kamu mencobanya, sedangkan span bisa diletakkan di mana pun teks bisa diletakkan. Penjelasan lebih lanjut ada di halaman div.

Styling span: apa yang berfungsi dan apa yang tidak

Warna, font, background dan padding horizontal semuanya berfungsi pada span. Ukuran tidak: elemen inline mengabaikan width, height dan margin atas serta bawah. Ubah menjadi inline-block untuk memberinya ukuran sambil tetap berada di dalam baris:

Span pertama hanya selebar kata-katanya. Span kedua tepat 120 kali 40 piksel dan tetap berada di dalam kalimat.

Span dengan JavaScript

Span adalah tempat yang biasa dipakai untuk nilai yang diisi oleh script, seperti penghitung atau nama pengguna:

Hanya angkanya yang berubah; bagian kalimat lainnya tidak tersentuh.

Kapan tag yang spesifik lebih baik daripada span

Span tidak punya makna, jadi screen reader membacanya sebagai teks biasa. Kalau kata-katanya punya peran, pakai tag untuk peran itu lalu atur gayanya sesukamu:

MaknaPakai ini, bukan span
Teks penting<strong>
Penekanan<em>
Teks yang disorot atau ditandai<mark>
Kode, nama file<code>
Tombol keyboard<kbd>
Tanggal atau waktu<time datetime="2026-09-24">
Teks dalam bahasa lain<span lang="fr"> (span ditambah atribut lang)

Halaman bold menjelaskan perbedaan <strong>, <b>, <em> dan <i>.

Kesalahan umum

  • Mengatur width pada span biasa. Nilainya diabaikan. Pakai display: inline-block.
  • Meletakkan div atau paragraf di dalam span. HTML yang tidak valid dan memutus baris. Ganti span luarnya dengan div.
  • Span yang bisa diklik. Seperti div, span dengan onclick tidak bisa dijangkau dengan keyboard. Pakai <button> atau link.
  • Satu span untuk setiap gaya. Kalau seluruh paragraf atau bagian butuh gaya, letakkan class-nya di <p> atau container-nya langsung, daripada membungkus teksnya dengan span.

Pertanyaan yang sering diajukan

Apa itu span di HTML?

<span> adalah container inline umum. Tag ini membungkus sebagian baris teks, misalnya satu kata, supaya CSS atau JavaScript bisa menargetkannya, dan tidak punya tampilan atau makna sendiri.

Apa perbedaan div dan span?

<div> adalah block: dimulai di baris baru dan memakan seluruh lebar. <span> adalah inline: tetap berada di dalam baris teks dan hanya selebar isinya. Pakai div untuk mengelompokkan blok konten, span untuk menandai kata di dalam teks.

Kenapa width tidak berfungsi pada span-ku?

Elemen inline mengabaikan width, height dan margin vertikal. Beri span itu display: inline-block supaya tetap di dalam baris sambil menerima ukuran, atau display: block supaya berperilaku seperti div.

Bagaimana cara mengubah warna satu kata di HTML?

Bungkus kata itu dengan span ber-class lalu beri warna di CSS: <span class="accent">word</span> dengan .accent { color: #2563eb; }. Untuk sekali pakai, <span style="color: #2563eb">word</span> juga bisa.

Bolehkah span berisi div?

Tidak. Span hanya boleh berisi konten inline seperti teks, link, gambar dan span lain. Browser tetap menampilkan div di dalam span, tapi itu HTML yang tidak valid dan memutus baris, jadi ganti elemen luarnya menjadi div.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai