Musim panas lalu, saya membaca spesifikasi HTML5 yang lengkap, dan setiap spesifikasi HTML sebelumnya (bahkan yang ditinggalkan), dan semua spesifikasi CSS yang bisa saya temukan, dan banyak spesifikasi XML. Karena saya suka dokumen hypertext yang kaya semantik, izinkan saya memberi Anda ide di balik semantik HTML yang relevan di HTML5.
Sebelum HTML5
Sebelum HTML5, i
dan b
memang sudah ketinggalan zaman. Alasannya adalah bahwa mereka pada dasarnya bekerja seperti em
dan strong
, masing-masing, tetapi dengan fokus pada presentasi dan bukan pada semantik (yang buruk).
Memang, i
berarti bahwa teks harus dicetak miring (dikatakan sesuatu tentang bagaimana teks harus ditampilkan di layar). Di sisi lain, em
berarti bahwa teks harus ditekankan (dikatakan sesuatu tentang semantik teks).
Ada perbedaan teoretis yang penting di sini. Jika Anda menggunakan em
, agen pengguna (= browser) tahu teks harus ditekankan, sehingga dapat membuatnya dalam huruf miring jika dokumen ditampilkan di layar (atau all-caps jika pemformatan tidak dimungkinkan, atau mungkin bahkan dalam huruf tebal adalah pengguna lebih suka itu), ia dapat mengucapkannya secara berbeda jika dokumen tersebut diucapkan kepada pengguna, dll.
Perhatikan bahwa penekanannya adalah tentang semantik. Misalnya, frasa
- The kucing adalah milikku. (= bukan anjingnya!)
- Kucing itu milikku . (= bukan milikmu!)
tidak memiliki arti yang sama.
Perbedaan yang sama berlaku untuk b
(huruf tebal) dan strong
(penekanan kuat).
Prinsip umum penulisan digital secara umum, dan penulisan hypertext pada khususnya, adalah bahwa Anda harus memisahkan konten dan gaya. Dalam pembuatan hypertext, ini berarti bahwa konten harus dalam file HTML, dan gaya harus dalam file CSS (atau sejumlah file CSS). Prinsip yang berbeda tetapi terkait adalah bahwa dokumen tersebut harus kaya akan semantik (seperti menandai header, footer, daftar, penekanan, alamat, area navigasi, dll.). Ini memiliki sejumlah keunggulan:
- Jauh lebih mudah bagi program komputer untuk menafsirkan dokumen. Program-program ini termasuk browser, aplikasi text-to-speech, mesin pencari, dan asisten digital. (Misalnya, browser dapat membiarkan Anda menyimpan alamat ke buku alamat Anda, jika hanya dapat menemukan dan menafsirkannya. Selain itu, Anda mungkin tahu bahwa Microsoft Word dapat membuat dan secara otomatis memperbarui TOC untuk Anda jika Anda menandai pos Anda dengan benar .)
- Jauh lebih mudah untuk mengubah gaya nanti. (Jika Anda ingin mengubah warna semua judul tingkat ketiga di dokumen 860 halaman Anda, Anda dapat mengubah satu baris dalam stylesheet. Jika Anda memiliki konten dan presentasi campuran, Anda harus membaca seluruh dokumen secara manual Dan Anda mungkin akan kehilangan satu atau dua judul, membuat dokumen terlihat tidak profesional.)
- Anda dapat menggunakan lembar gaya yang berbeda tergantung pada situasinya (apakah dokumen ditampilkan di layar atau dicetak di atas kertas?). Anda bahkan dapat membiarkan pengguna akhir memilih gaya sendiri. (Situs web saya menawarkan sejumlah lembar gaya alternatif. Di IE dan FF, Anda mengubahnya menggunakan menu Tampilan.)
Jadi, singkatnya, i
dan b
sudah usang karena mereka adalah tag HTML yang mengkhawatirkan presentasi , yang sama sekali salah.
Dalam HTML5
Dalam HTML5 i
dan b
tidak lagi ditinggalkan. Sebaliknya, mereka diberi makna sematik . Jadi mereka sekarang sebenarnya tentang semantik, dan bukan tentang presentasi.
Seperti sebelumnya, Anda gunakan em
untuk menandai penekanan: "Kucing itu milikku." Tetapi Anda menggunakan i
untuk hampir semua kasus lain di mana Anda akan menggunakan cetak miring dalam karya cetak. Misalnya:
- Anda gunakan
i
untuk menandai sebutan taksonomi: "Saya suka R. norvegicus ."
- Anda menggunakan
i
untuk menandai frasa dalam bahasa yang berbeda dibandingkan dengan teks di sekitarnya: À la carte
- Anda gunakan
i
untuk menandai sebuah kata ketika Anda berbicara tentang kata itu sendiri: " minum adalah kata benda dan kata kerja"
Sebaiknya gunakan class
atribut untuk menentukan penggunaan yang tepat (juga Google "mikroformat" dan "mikrodata"). Dan, tentu saja, dalam kasus kedua, Anda harus benar-benar menggunakan lang
atribut untuk menentukan bahasa yang benar. (Kalau tidak, misalnya , agen text-to-speech mungkin salah mengucapkan kata sandi.)
Setahun yang lalu atau lebih, spesifikasi HTML5 juga mengatakan bahwa cite
harus digunakan untuk menandai nama buku, film, opera, lukisan, dll.:
- Apa pendapat Anda tentang Nymphomaniac ?
Akhirnya, sejak dahulu kala, dfn
digunakan untuk menandai turunan frase dalam teks (seperti definisi matematika, atau definisi istilah):
- Sebuah kelompok adalah satu set X dilengkapi dengan operasi biner tunggal * seperti itu ...
Jadi huruf miring dalam buku cetak Anda, yang dapat berarti banyak hal yang berbeda, diwakili oleh empat tag HTML5 yang berbeda, yang benar-benar hebat, karena semantiknya baik, karena saya mencoba meyakinkan Anda tentang sebelumnya. (Misalnya, Anda dapat meminta browser Anda untuk membuat daftar semua definisi dalam teks, sehingga Anda dapat memastikan Anda mengetahui semuanya sebelum ujian.)
Beralih ke strong
dan b
, spesifikasi HTML5 mengatakan bahwa itu strong
harus digunakan untuk menandai bagian penting dari teks, seperti peringatan atau kata yang sangat penting untuk ditangkap dalam sebuah kalimat. Di sisi lain, b
harus digunakan untuk menandai hal-hal yang perlu mudah ditemukan dalam teks, seperti kata kunci. Saya juga menggunakan b
sebagai pos dalam daftar item (LI).
<b>
dan<i>
tidak ditinggalkan.