Perbedaan HTML HTML 2 HTML 3.2 HTML 4 HTML 5 dan HTML 6 - Pemrograman Web
hai saya penulis blogger di artikel ini kami akan menjawab pertanyaan apa itu HTML apa fungsinya dan apa yang digunakan untuk saya akan mulai dengan memberi tahu Anda apa artinya dan kemudian saya akan menunjukkan kepada Anda apa fungsinya dan apa yang digunakan untuk HTML adalah singkatan dari hypertext markup bahasa dan hypertext mengacu pada fakta bahwa HTML membuatnya jadi Anda bisa klik tautan di halaman web yang merupakan hypertext dari kata-kata markup bahasa hanya berarti bahwa itu adalah sesuatu yang Anda gunakan untuk menandai bahasa Inggris normal menunjukkan hal-hal biar saya tunjukkan apa yang saya maksud ini adalah halaman web biasa Blogger dan seluruh halaman menggunakan HTML untuk memberi tahu browser apa yang harus dilakukan dengan semuanya.
Perbedaan
"Perbedaan HTML, HTML 2 , HTML 3.2, HTML 4, HTML 5 dan HTML 6 " menjelaskan perbedaan spesifikasi HTML, HTML 2 , HTML 3.2, HTML 4, HTML 5 dan HTML 6.
1.
Pendahuluan
1.1.
Sejarah HTML
HTML
telah mengalami evolusi berkelanjutan sejak diperkenalkan ke Internet pada awal
1990-an. Beberapa fitur diperkenalkan dalam spesifikasi; yang lainnya
diperkenalkan dalam rilis perangkat lunak. Di beberapa hal, implementasi dan
praktik pengembang web telah bertemu satu sama lain dan dengan spesifikasi dan
standar, tetapi dengan cara lain, keduanya telah menyimpang. HTML4 menjadi
Rekomendasi W3C pada tahun 1997. Meskipun terus berfungsi sebagai panduan kasar
untuk banyak fitur inti HTML, tidak memberikan informasi yang cukup untuk
dibangun implementasi yang saling beroperasi satu sama lain dan, yang lebih penting,
dengan konten Web. Itu hal yang sama berlaku untuk XHTML1, yang mendefinisikan
serialisasi XML untuk HTML4, dan HTML DOM Level 2, yang mendefinisikan API
JavaScript untuk HTML dan XHTML.
Spesifikasi
HTML mencerminkan upaya, dimulai pada tahun 2004, untuk mempelajari HTML
kontemporer
implementasi
dan konten Web. Spesifikasi:
1.
Mendefinisikan satu
bahasa yang disebut HTML yang dapat ditulis dalam sintaks HTML dan XML
2.
sintaksis.
3.
Mendefinisikan model
pemrosesan rinci untuk mendorong implementasi interoperable.
4.
Meningkatkan markup
untuk dokumen.
5.
Memperkenalkan markup
dan API untuk idiom yang muncul, seperti aplikasi Web.
1.2.
Permasalahan
Bagaimana spesifikasi
pada html 5.
2.
Sintaks
HTML
mendefinisikan sintaks, disebut sebagai "sintaks HTML", yang sebagian
besar kompatibel dengan HTML4 dan dokumen XHTML1 yang diterbitkan di Web,
tetapi tidak kompatibel dengan yang lebih esoterik Fitur SGML (mengurangi jumlah karakter yang diperlukan untuk menandai dokumen)
dari HTML4, seperti instruksi pemrosesan dan markup singkatan seperti ini tidak
didukung oleh sebagian besar agen pengguna. Dokumen yang menggunakan sintaks
HTML disajikan dengan
jenis
media teks / html .
2.1.
Pengkodean Karakter
Untuk
sintaks HTML, pengembang web diminta untuk mendeklarasikan pengkodean karakter.
Ada tiga cara untuk melakukannya:
·
Di tingkat
transportasi; misalnya, dengan menggunakan header Jenis Konten HTTP.
· Menggunakan karakter
Unicode Byte Order Mark (BOM) di awal file. Karakter ini memberikan tanda
tangan untuk pengkodean yang digunakan.
· Menggunakan elemen
meta dengan atribut charset yang menentukan pengkodean dalam 1024 pertama byte
dari dokumen; misalnya, <meta charset = "UTF-8"> dapat
digunakan untuk menentukan Pengkodean UTF-8. Ini menggantikan kebutuhan untuk
<meta http-equiv = "Content-Type" content = "text / html;
charset = UTF-8"> meskipun sintaks tersebut masih diperbolehkan.
Untuk
sintaks XML, pengembang Web harus menggunakan aturan yang ditetapkan dalam
spesifikasi XML untuk mengatur pengkodean karakter
2.2.
Doctype
Sintaks
HTML membutuhkan doctype yang akan ditentukan untuk memastikan bahwa browser
merender halaman dalam mode standar. Doctype tidak memiliki tujuan lain.
[DOCTYPE]
Deklarasi
doctype untuk sintaks HTML adalah <! DOCTYPE
html> dan tidak peka huruf besar / kecil. Doctypes dari versi HTML
sebelumnya lebih panjang karena bahasa HTML adalah SGML- berdasarkan dan karena
itu diperlukan referensi ke DTD. Ini tidak lagi menjadi kasus dan doctype-nya hanya
diperlukan untuk mengaktifkan mode standar untuk dokumen yang ditulis
menggunakan sintaks HTML. Browser sudah lakukan ini untuk <! DOCTYPE html>.
Untuk
mendukung pembuat markup lama yang tidak dapat menghasilkan doctype pendek
pilihan, file doctype <! DOCTYPE html SYSTEM
"about: legacy-compat"> diizinkan dalam sintaks HTML.
Jenis dokumen yang ketat untuk HTML 4.0, HTML
4.01, XHTML 1.0 serta XHTML 1.1 juga diperbolehkan (tetapi tidak disarankan)
dalam sintaks HTML.
Dalam
sintaks XML, deklarasi doctype apa pun dapat digunakan, atau mungkin
dihilangkan sama sekali. Dokumen dengan tipe media XML selalu ditangani dalam
mode standar.
2.3.
MathML dan SVG
Sintaks
HTML memungkinkan elemen MathML dan SVG digunakan di dalam dokumen. Sebuah math atau svg tag awal
menyebabkan pengurai HTML beralih ke mode penyisipan khusus yang menempatkan
elemen dan atribut di ruang nama yang sesuai, melakukan perbaikan huruf
besar-kecil untuk elemen dan atribut yang memiliki huruf besar-kecil, dan
mendukung sintaks elemen kosong seperti dalam XML. Sintaksnya masih
case-insensitive dan atributnya memungkinkan sintaks yang sama seperti untuk
elemen HTML. Deklarasi ruang nama dapat dihilangkan. Bagian CDATA didukung
dalam mode penyisipan ini.
Beberapa
MathML dan SVG unsur penyebab parser untuk beralih kembali ke "mode
HTML", misalnya mtext, dan foreignObject, sehingga Anda dapat menggunakan elemen
HTML atau baru math atau svg elemen.
·
⟨ dan
⟩ referensi karakter bernama saat ini
meluas U + 27E8 dan U + 27E9 (matematika kiri / kanan sudut bracket) bukannya U
+ 2329 dan U + 232A (kiri / kanan menunjuk sudut braket), masing-masing.
·
Banyak referensi
karakter bernama baru telah ditambahkan, termasuk semua referensi karakter
bernama dari MathML.
·
Elemen kosong
(dikenal sebagai "KOSONG" di HTML4) diizinkan untuk memiliki garis
miring.
·
Simbol ampersand (&) dapat dibiarkan tidak lolos dalam lebih banyak
kasus dibandingkan dengan HTML4.
·
Atribut harus
dipisahkan oleh setidaknya satu karakter spasi.
·
Atribut dengan nilai
kosong dapat ditulis hanya sebagai nama atribut yang menghilangkan tanda sama
dengan dan nilainya, meskipun atribut tersebut bukan atribut boolean. (Hal ini
umumnya percaya bahwa HTML4 memungkinkan nilai yang akan dihilangkan untuk
atribut boolean. Sebaliknya, HTML4 diperbolehkan hanya menggunakan atribut
nilai dan menghilangkan nama atribut, untuk atribut disebutkan, tapi ini tidak
didukung dalam browser.)
·
Atribut yang
menghilangkan tanda kutip untuk nilai diizinkan untuk menggunakan kumpulan
karakter yang lebih besar dibandingkan dengan HTML4.
·
Pengurai HTML tidak
melakukan normalisasi spasi kosong pada nilai atribut; misalnya, spasi kosong
di depan dan di belakang dalam idatribut tidak diabaikan (dan sekarang tidak
valid), dan karakter baris baru dapat digunakan dalam value atribut input
elemen tanpa menggunakan referensi karakter.
·
optgroup tag
akhir sekarang opsional.
·
colgroup tag
awal sekarang opsional dan disimpulkan oleh parser HTML.
3.
Bahasa
Bagian ini dibagi menjadi beberapa subbagian untuk menggambarkan lebih jelas berbagai perbedaan dari HTML4.
3.1.
Elemen Baru
Elemen-elemen berikut telah diperkenalkan untuk
struktur yang lebih baik:
·
section
mewakili dokumen umum atau bagian aplikasi. Ini harus dapat digunakan bersama-sama dengan h1,
h2,
h3,
h4,
h5,
dan h6unsur-unsur
untuk menunjukkan struktur dokumen.
·
article
mewakili bagian independen dari suatu dokumen, seperti entri blog atau artikel
surat kabar.
·
main
mewakili isi utama dari badan dokumen atau aplikasi.
·
aside
mewakili bagian konten yang hanya sedikit terkait dengan bagian halaman
lainnya.
·
header
mewakili sekelompok pengantar atau alat bantu navigasi.
·
footer
mewakili footer untuk suatu bagian dan dapat berisi informasi tentang penulis,
informasi hak cipta, dll.
·
nav
mewakili bagian dari dokumen yang ditujukan untuk navigasi.
·
figure
mewakili bagian dari konten aliran mandiri, biasanya dirujuk sebagai satu unit
dari aliran utama dokumen.
<figur>
<video src = "example.webm"
kontrol> </video>
<figcaption> Contoh
</figcaption>
</figure>
figcaption
dapat digunakan sebagai caption (opsional).
·
template
dapat digunakan untuk mendeklarasikan fragmen HTML yang dapat dikloning dan
disisipkan ke dalam dokumen dengan skrip.
Lalu ada beberapa elemen baru lainnya:
·
video
dan audiountuk
konten multimedia. Keduanya menyediakan API sehingga pengembang web aplikasi
dapat membuat skrip antarmuka pengguna mereka sendiri, tetapi ada juga cara
untuk memicu antarmuka pengguna yang disediakan oleh agen pengguna. source
elemen digunakan bersama dengan elemen ini jika ada beberapa aliran tersedia
dari jenis yang berbeda.
·
track
menyediakan trek teks untuk video
elemen tersebut.
· embed
digunakan untuk konten plugin.
· mark
merepresentasikan sekumpulan teks dalam satu dokumen yang ditandai atau disorot
untuk tujuan referensi, karena relevansinya dalam konteks lain.
· progress
mewakili penyelesaian tugas, seperti mengunduh atau saat melakukan serangkaian
operasi yang mahal.
· meter
mewakili suatu pengukuran, seperti penggunaan disk.
· time
mewakili tanggal dan / atau waktu.
· ruby,,
rt dan
rp memungkinkan
untuk menandai anotasi ruby.
· bdi
mewakili rentang teks yang akan diisolasi dari sekitarnya untuk tujuan
pemformatan teks dua arah.
· wbr
mewakili peluang jeda baris.
· canvas
digunakan untuk merender grafik bitmap dinamis dengan cepat, seperti grafik
atau game.
· datalist
bersama dengan list atribut
baru untuk input
dapat digunakan untuk membuat kotak kombo:
<input list = "browser" ><datalist id = "browser" ><option value = "Safari">
<option value = "Internet Explorer">
<option value = "Opera">
<option value = "Firefox">
</datalist>
· keygen
mewakili kontrol untuk pembuatan pasangan kunci.
· output
mewakili beberapa jenis keluaran, seperti dari kalkulasi yang dilakukan melalui
pembuatan skrip.
input
elemen type
atribut kini memiliki nilai-nilai
baru sebagai berikut:
·
tel
·
search
·
url
·
email
·
date
·
time
·
number
·
range
·
color
Ide dari jenis baru ini adalah pengguna dapat
menyediakan antarmuka pengguna, seperti pemilih tanggal kalender atau integrasi
dengan buku alamat pengguna, dan mengirimkan format yang ditentukan ke server.
Ini memberi pengguna pengalaman yang lebih baik karena masukannya diperiksa
sebelum mengirimnya ke server yang berarti ada lebih sedikit waktu untuk
menunggu umpan balik.
3.2. Atribut Baru
Beberapa atribut telah diperkenalkan ke berbagai elemen yang sudah menjadi bagian dari HTML4:
·
area
elemen, untuk konsistensi dengan a
dan link
elemen, kini juga memiliki hreflang,
type
dan rel
atribut.
·
base
elemen sekarang dapat memiliki target
atribut juga, terutama untuk konsistensi dengan a
elemen. (Ini sudah didukung secara luas.)
·
meta
elemen memiliki charset
atribut sekarang seperti ini sudah banyak didukung dan menyediakan cara yang
bagus untuk menentukan pengkodean
karakter untuk dokumen.
·
autofocus
Atribut baru dapat ditentukan pada input
(kecuali jika type
atributnya adalah hidden)
select,,
textarea
dan button
elemen. Ini menyediakan cara deklaratif untuk memfokuskan kontrol
formulir selama pemuatan halaman. Menggunakan fitur ini akan meningkatkan
pengalaman pengguna dibandingkan dengan memfokuskan elemen dengan skrip karena
pengguna dapat mematikannya jika pengguna tidak menyukainya, misalnya.
·
placeholder
Atribut baru dapat ditentukan pada elemen input
dan textarea.
Ini mewakili petunjuk yang dimaksudkan untuk membantu pengguna dengan entri
data.
<input type = search name = q placeholder = "Enter search phrase ..." > <button> Telusuri </button><label> Email <input type = email name = email placeholder = "john@example.com" > </label>
placeholder
atribut tidak boleh digunakan sebagai pengganti untuk labelelemen.
<! - Jangan lakukan ini: ->
<input type = email name = email placeholder = "Email">
·
Baru form
atribut input,
output,
select,
textarea,
button,
label,
object
dan fieldset
elemen memungkinkan untuk kontrol terkait dengan formulir. Elemen
ini sekarang dapat ditempatkan di mana saja pada halaman, tidak hanya sebagai
turunan formelemen,
dan masih dikaitkan dengan a form.
<tabel>
<tr>
<th> Key <th> Nilai <th> Aksi<tr>
<td> <form id = 1 > <input name = 1-key> </form>
<td> <input form = 1 name = 1-value>
<td> <button form = 1 name = 1-action value = save> ✓ </button>
<button form = 1 name = 1-action value = delete> ✗ </button>
...
</table>
·
fieldset
elemen sekarang memungkinkan disabled
atribut yang menonaktifkan semua kontrol keturunan (tidak
termasuk orang-orang yang adalah keturunan dari legend
elemen) saat tertentu, dan name
atribut yang dapat digunakan untuk akses naskah.
·
input
elemen memiliki beberapa atribut baru untuk menentukan kendala: autocomplete,
min,
max,
multiple,
pattern
dan step.
Seperti disebutkan sebelumnya, ini juga memiliki list
atribut baru yang dapat digunakan bersama dengan datalist
elemen. Ia juga sekarang memiliki atribut width
dan height
untuk menentukan dimensi gambar saat menggunakan type=image.
·
input
dan textarea
elemen memiliki atribut baru bernama dirname
yang menyebabkan directionality kontrol yang ditetapkan oleh
pengguna untuk diserahkan juga.
·
textarea
elemen juga memiliki tiga atribut baru, maxlength,
minlength
dan wrap
yang mengendalikan max panjang input dan diserahkan perilaku
garis pembungkus, masing-masing.
·
form
elemen memiliki novalidate
atribut yang dapat digunakan untuk pengiriman formulir validasi disable (yaitu
bentuk selalu dapat disampaikan).
·
input
dan button
elemen memiliki formaction,
formenctype,
formmethod,
formnovalidate,
dan formtarget
sebagai atribut baru. Jika ada, mereka menimpa action,
enctype,
method,
novalidate,
dan target
atribut pada form
elemen.
·
input
elemen juga memiliki baru minlength
atribut.
·
script
elemen memiliki atribut baru yang disebut async
bahwa pengaruh pemuatan skrip dan eksekusi.
·
html
elemen memiliki atribut baru yang disebut manifest
yang menunjuk ke cache aplikasi nyata yang digunakan dalam
hubungannya dengan API untuk aplikasi Web secara offline.
·
link
elemen memiliki atribut baru yang disebut sizes.
Ini dapat digunakan dalam hubungannya dengan icon
hubungan (diatur melalui rel
atribut; dapat digunakan untuk misalnya favicons) untuk menunjukkan ukuran ikon
yang direferensikan, sehingga memungkinkan ikon dengan dimensi yang berbeda.
·
ol
elemen memiliki atribut baru yang disebut reversed.
Saat ada, ini menunjukkan bahwa urutan daftar menurun.
·
iframe
elemen memiliki atribut baru yang disebut sandbox
dan srcdoc
yang memungkinkan untuk sandboxing konten, misalnya blog komentar.
·
object
elemen memiliki atribut baru yang disebut typemustmatch
yang memungkinkan embedding lebih aman dari sumber eksternal.
·
img
elemen memiliki atribut baru yang disebut crossorigin
menggunakan CORS di mengambil dan jika berhasil, memungkinkan
data gambar untuk dibaca dengan canvas
API.
Beberapa
atribut dari HTML4 sekarang berlaku untuk semua elemen. Ini disebut atribut global
yang: accesskey,
class,
dir,
id,
lang,
style,
tabindexdan
title.
Selain itu, XHTML 1.0 hanya diperbolehkan xml:spacepada beberapa elemen, yang sekarang
diperbolehkan pada semua elemen dalam dokumen XHTML.
Ada juga beberapa atribut global baru:
·
contenteditableatribut
menunjukkan bahwa elemen adalah daerah dapat diedit. Pengguna dapat mengubah
konten elemen dan memanipulasi markup.
·
koleksi Web atribut pengembang yang ditetapkan.
Pengembang web dapat menentukan atribut apa pun yang mereka inginkan selama
mereka memberikan awalan untuk menghindari bentrokan dengan versi HTML
mendatang. Ini dimaksudkan untuk digunakan untuk menyimpan data kustom untuk
digunakan oleh halaman Web atau aplikasi itu sendiri. Mereka tidak
dimaksudkan untuk data yang akan dikonsumsi oleh pihak lain (misalnya agen
pengguna). data-*data-
·
hidden
atribut menunjukkan bahwa elemen belum, atau tidak lagi, relevan.
·
roledan
atribut koleksi yang dapat digunakan untuk menginstruksikan teknologi bantu. aria-*
·
spellcheckatribut
memungkinkan untuk mengisyaratkan apakah konten dapat diperiksa untuk ejaan
atau tidak.
·
translateatribut
memberikan petunjuk untuk penerjemah apakah konten harus diterjemahkan.
HTML juga
membuat semua atribut penangan peristiwa dari HTML4, yang berbentuk , atribut
global, dan menambahkan beberapa atribut penangan peristiwa baru untuk
peristiwa baru yang didefinisikannya; misalnya, atribut event handler untuk
kejadian yang digunakan oleh API untuk elemen media ( dan ). Spesifikasi
memiliki indeks
semua peristiwa .on event onplayplayvideoaudio
3.3. Elemen yang dirubah
Elemen-elemen ini memiliki arti yang sedikit dimodifikasi dalam HTML untuk lebih mencerminkan bagaimana mereka digunakan di Web atau untuk membuatnya lebih berguna:
· address
elemen sekarang scoped oleh nenek moyang terdekat article
atau body
elemen.
· b
elemen sekarang merupakan rentang teks yang perhatian ditarik
untuk tujuan utilitarian tanpa menyampaikan setiap pentingnya tambahan dan
tanpa implikasi suara alternatif atau suasana hati, seperti kata-kata kunci
dalam abstrak dokumen, nama produk di review, kata ditindaklanjuti dalam
perangkat lunak berbasis teks interaktif, atau buku besar artikel.
· blockquote
elemen masih merupakan konten yang dikutip dari sumber lain tapi
sekarang juga memungkinkan termasuk kutipan dalam footer
atau cite
elemen serta inline perubahan seperti penjelasan dan singkatan.
· dl
elemen sekarang merupakan daftar asosiasi kelompok nama-nilai,
dan tidak lagi dikatakan sesuai untuk dialog.
· hr
elemen sekarang merupakan ayat-tingkat tematik istirahat.
· i
elemen sekarang merupakan rentang teks dengan suara alternatif
atau suasana hati, atau offset dari prosa yang normal dengan cara menunjukkan
kualitas yang berbeda dari teks, seperti sebutan taksonomi, istilah teknis, sebuah
frase idiomatik dari bahasa lain, sebuah pemikiran, atau nama kapal dalam
teks-teks Barat.
· Untuk
label
elemen, browser tidak boleh lagi memindahkan fokus dari label ke
kontrol kecuali perilaku seperti itu standar untuk antarmuka pengguna platform
yang mendasarinya.
· noscript
elemen tidak lagi dikatakan diberikan ketika agen pengguna tidak
mendukung bahasa scripting dipanggil oleh script
elemen sebelumnya dalam dokumen.
· s
elemen sekarang mewakili isi yang tidak lagi akurat atau tidak
lagi relevan.
· script
elemen sekarang dapat digunakan untuk script atau untuk blok data
kustom.
· small
elemen sekarang mewakili komentar samping seperti cetakan kecil.
· strong
elemen sekarang mewakili kepentingan daripada penekanan kuat.
· u
elemen sekarang merupakan rentang teks dengan tidak
diartikulasikan, meskipun secara eksplisit diberikan, penjelasan non-tekstual,
seperti label teks sebagai nama yang tepat dalam teks Cina (Cina mark nama yang
tepat), atau label teks sebagai salah eja.
3.4. Atribut yang dirubah
Beberapa atribut telah berubah dalam berbagai cara.
·
alt
atribut pada img
memiliki persyaratan yang lebih rumit, dan dalam beberapa kasus juga dapat
dihilangkan. Untuk detailnya, lihat spesifikasinya
.
·
accept
atribut pada input
sekarang memungkinkan nilai-nilai audio/*, video/*dan image/*.
·
accesskey
atribut global sekarang memungkinkan beberapa karakter yang akan
ditentukan, yang agen pengguna dapat memilih dari.
·
action
atribut pada form
tidak lagi diizinkan untuk memiliki URL yang kosong.
·
border
atribut pada table
hanya memungkinkan nilai-nilai "1" dan string kosong.
·
colspan
atribut pada td
dan th
sekarang harus lebih besar dari nol.
·
coords
atribut pada area
tidak lagi memungkinkan nilai persentase dari radius ketika
elemen dalam keadaan lingkaran.
·
data
atribut pada object
tidak lagi dikatakan relatif terhadap codebase
atribut.
·
defer
atribut pada script
sekarang secara eksplisit membuat script mengeksekusi ketika
halaman memiliki parsing selesai.
·
dir
atribut global sekarang memungkinkan nilai auto.
·
enctype
atribut pada form
sekarang mendukung nilai text/plain.
·
width
dan height
atribut pada img,
iframedan
objecttidak
lagi diperbolehkan mengandung persentase. Mereka juga tidak boleh digunakan
untuk meregangkan gambar ke rasio aspek yang berbeda dari rasio aspek intrinsiknya.
·
href
atribut pada link
tidak lagi diizinkan untuk memiliki URL yang kosong.
·
href
atribut pada base
sekarang diizinkan mengandung URL relatif.
·
Semua atribut yang mengambil URL, misalnya href
pada a
elemen, sekarang mendukung IRI jika pengkodean dokumen adalah
UTF-8 atau UTF-16.
·
http-equiv
atribut pada meta
tidak lagi dikatakan digunakan oleh HTTP server untuk membuat
HTTP header di respon HTTP. Sebaliknya, ini dikatakan sebagai arahan pragma
untuk digunakan oleh agen pengguna.
·
id
atribut global kini diperbolehkan untuk memiliki nilai apapun,
asalkan unik, bukan string kosong, dan tidak mengandung karakter ruang.
·
lang
atribut global mengambil string kosong di samping pengenal bahasa
yang valid, seperti xml:langhalnya
dalam XML.
·
media
atribut pada link
saat menerima daftar permintaan media dan default untuk
"semua".
·
Atribut event handler (misalnya onclick)
sekarang selalu menggunakan JavaScript sebagai bahasa skrip.
·
value
atribut dari li
elemen tidak lagi ditinggalkan karena tidak presentasi. Hal yang
sama berlaku untuk atribut start
dan elemen. typeol
·
style
atribut global sekarang selalu menggunakan CSS sebagai bahasa styling.
·
tabindex
atribut global sekarang memungkinkan nilai-nilai negatif yang menunjukkan bahwa
elemen dapat menerima fokus tetapi tidak dapat tab untuk.
·
targetatribut
dari adan
area
elemen tidak lagi ditinggalkan, karena berguna dalam aplikasi Web, misalnya
dalam hubungannya dengan iframe.
·
type
atribut pada scriptdan
styletidak
lagi diperlukan jika bahasa scripting adalah JavaScript dan bahasa styling CSS,
masing-masing.
·
usemap
atribut pada img
tidak lagi membutuhkan URL, melainkan mengambil referensi
hash-nama yang valid untuk map
elemen.
3.5. Elemen Usang
Elemen di bagian ini tidak untuk digunakan oleh
pengembang web. Agen pengguna masih harus mendukung mereka dan berbagai bagian
dalam HTML menjelaskan caranya. Misalnya, isindexelemen usang ditangani oleh bagian parser.
Elemen berikut tidak ada dalam HTML karena efeknya
murni penyajian dan fungsinya ditangani lebih baik oleh CSS:
·
basefont
·
big
·
center
·
font
·
strike
·
tt
Elemen berikut tidak ada dalam HTML karena menggunakannya
merusak kegunaan dan aksesibilitas:
·
frame
·
frameset
·
noframes
Elemen berikut ini tidak disertakan karena tidak
sering digunakan, menimbulkan kebingungan, atau fungsinya dapat ditangani oleh
elemen lain:
·
acronym
tidak disertakan karena telah menimbulkan banyak
kebingungan. Pengembang web digunakan abbr
untuk singkatan.
·
applet
telah usang demi object.
·
isindex penggunaan dapat diganti dengan penggunaan kontrol
formulir.
Akhirnya noscript
elemen tersebut hanya sesuai dalam sintaks HTML. Itu
tidak diperbolehkan dalam sintaks XML. Ini karena untuk tidak hanya
menyembunyikan secara visual tetapi juga mencegah konten menjalankan skrip,
menerapkan lembar gaya, memiliki kontrol formulir yang dapat dikirim, memuat
sumber daya, dan sebagainya, pengurai HTML mengurai konten noscript
elemen sebagai teks biasa. Hal yang sama tidak
dimungkinkan dengan parser XML.
3.6. Atribut Kadaluarsa
Beberapa atribut dari HTML4 tidak lagi diizinkan di HTML. Spesifikasi menentukan bagaimana agen pengguna harus memprosesnya dalam dokumen lama, tetapi pengembang Web tidak diizinkan menggunakannya dan mereka tidak akan memvalidasi.
HTML memiliki saran tentang apa yang dapat Anda gunakan sebagai gantinya.
·
rev
dan charsetatribut
pada link dan
a.
·
shapedan
coordsatribut
pada a.
·
Longdesc atribut
pada iframe.
·
name atribut
pada img
(gunakan idsebagai
gantinya).
·
archive,
classid,
codebase,
codetype,
declareDan
standby
atribut pada object.
·
valuetype
dan type atribut
pada param.
·
Abbr dan
scope
atribut pada td.
Selain itu, HTML tidak memiliki atribut presentasi yang ada di HTML4 karena fungsinya ditangani dengan lebih baik oleh CSS:
·
align
atribut pada caption,
iframe,
img,
input,
object,
legend,
table,
hr,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
col,
colgroup,
tbody,
td,
tfoot,
th,
theaddan
tr.
·
alink,
link,
textDan
vlinkatribut
pada body.
·
background
atribut pada body.
·
bgcolor
atribut pada table,
tr,
td,
thdan
body.
·
cellpadding
dan cellspacing
atribut pada table.
·
char dan
charoff
atribut pada col,
colgroup,
tbody,
td,
tfoot,
th,
thead
dan tr.
·
compact
atribut pada dl,
oldan
ul.
·
frameborder
atribut pada iframe.
·
height
atribut pada tddan
th.
·
hspace
dan vspace
atribut pada img dan
object.
·
marginheight
dan marginwidth
atribut pada iframe.
·
nowrap
atribut pada tddan
th.
·
scrolling
atribut pada iframe.
·
type atribut
pada li,
dan ul.
·
valign
atribut pada col,
colgroup,
tbody,
td,
tfoot,
th,
thead
dan tr.
·
width
atribut pada hr,
table,
td,
th,
col,
colgroup
dan pre.
Atribut berikut diperbolehkan tetapi pengembang Web tidak dianjurkan untuk menggunakannya dan sebaliknya sangat dianjurkan untuk menggunakan solusi alternatif:
·
The border
atribut pada img.
Ini harus memiliki nilai " 0"
saat ada. Pengembang web dapat menggunakan CSS sebagai gantinya.
·
The language
atribut pada script.
Ini harus memiliki nilai " JavaScript"
(case-insensitive) jika ada dan tidak boleh bertentangan dengan type atribut.
Pengembang web dapat mengabaikannya begitu saja karena tidak memiliki fungsi
yang berguna.
·
The name atribut
pada a.
Pengembang web dapat menggunakan id atribut
sebagai gantinya.
Model konten adalah yang menentukan bagaimana elemen dapat disarangkan - apa yang diizinkan sebagai turunan (atau turunan) dari elemen tertentu.
Pada tingkat tinggi, HTML4
memiliki dua kategori utama dari elemen, "inline" (misalnya span,
img,
teks), dan "block-level" (misalnya div,
hr,
table
). Beberapa elemen tidak sesuai dengan kategori mana pun.
Beberapa elemen mengizinkan
elemen "sebaris" (mis. p),
Beberapa elemen "tingkat blok" diizinkan (mis. body),
Beberapa diizinkan keduanya (mis. div),
Sementara elemen lain tidak mengizinkan salah satu kategori tetapi hanya
diizinkan elemen spesifik lainnya (mis. dl,
table),
Atau tidak mengizinkan anak sama sekali (mis link.
img,
hr
).
Perhatikan perbedaan antara
elemen itu sendiri yang berada dalam kategori tertentu, dan memiliki model
konten dari kategori tertentu; misalnya, pelemen
itu sendiri adalah elemen "level blok", tetapi memiliki model konten
"sebaris".
Untuk membuatnya lebih
membingungkan, HTML4 memiliki aturan model konten yang berbeda dalam citarasa
Strict, Transitional dan Frameset; misalnya, di Strict, bodyelemen
hanya mengizinkan elemen "level blok", tetapi dalam Transisi, elemen
ini mengizinkan "sebaris" dan "level blok".
Untuk membuat lebih membingungkan lagi, CSS menggunakan istilah "elemen level blok" dan "elemen level sebaris" untuk model pemformatan visualnya, yang terkait dengan properti 'display' CSS dan tidak ada hubungannya dengan aturan model konten HTML.
HTML tidak menggunakan istilah "level blok" atau "sebaris" sebagai bagian dari aturan model kontennya, untuk mengurangi kebingungan dengan CSS. Namun, ia memiliki lebih banyak kategori daripada HTML4, dan sebuah elemen tidak dapat menjadi bagian darinya, salah satunya, atau beberapa di antaranya.
·
Konten metadata, misalnya link,
script.
·
Konten aliran, misalnya span,
div,
teks. Ini kira-kira seperti "level blok" dan "sebaris"
HTML4 bersama-sama.
·
Sectioning konten, misalnya aside,
section.
·
Konten judul, mis h1.
·
Ungkapan konten, misalnya span,
img,
teks. Ini kira-kira seperti "inline" HTML4. Elemen yang menyusun
konten juga merupakan konten aliran.
·
Konten tertanam, misalnya img,
iframe,
svg.
·
Konten interaktif, misalnya a,
button,
label.
Konten interaktif tidak boleh disarangkan.
Sebagai perubahan luas dari
HTML4, HTML tidak lagi memiliki elemen yang hanya menerima apa yang disebut
HTML4 sebagai elemen "level blok"; misalnya, bodyelemen
sekarang memungkinkan konten mengalir. Jadi, Ini lebih dekat dengan HTML4
Transitional daripada HTML4 Strict.
Perubahan lebih lanjut meliputi:
·
The addresselemen
sekarang memungkinkan konten aliran, tetapi dengan tidak ada keturunan konten
pos, tidak ada sectioning keturunan konten, dan tidak ada header,
footeratau
addressketurunan
elemen.
·
HTML4 diizinkan objectdalam
head.
HTML tidak.
·
The noscriptunsur
adalah "blok-tingkat" elemen dalam HTML4, tetapi ungkapan konten
dalam HTML.
·
The table,
thead,
tbody,
tfoot,
tr,
ol,
uldan
dlunsur-unsur
yang boleh kosong di HTML.
· Elemen tabel harus sesuai dengan model tabel (misalnya, dua sel tidak boleh tumpang tindih).
·
The tableelemen
sekarang tidak memungkinkan colelemen
sebagai anak-anak langsung. Namun, pengurai HTML menyiratkan sebuah colgroupelemen,
jadi perubahan ini seharusnya tidak memengaruhi text/htmlkonten.
·
The table
elemen sekarang memungkinkan tfootelemen
untuk menjadi anak terakhir.
·
The caption
elemen sekarang memungkinkan konten mengalir, tapi tanpa
keturunan tableelemen.
·
The thelemen
sekarang memungkinkan konten mengalir, tapi tanpa header,
footer,
sectioning konten, atau menuju keturunan konten.
·
The aelemen
sekarang memiliki transparan
model konten (kecuali tidak memungkinkan keturunan konten interaktif), yang
berarti bahwa ia memiliki model konten yang sama seperti induknya. Ini berarti
bahwa aelemen
tersebut sekarang dapat berisi divelemen
misalnya , jika induknya mengizinkan aliran konten.
·
The insdan
delelemen
juga memiliki model konten transparan. HTML4 memiliki aturan serupa dalam prosa
yang tidak dapat diekspresikan dalam DTD.
·
The objectelemen
juga memiliki model konten transparan, setelah nya paramanak-anak.
·
The mapelemen
juga memiliki model konten transparan. The area
elemen dianggap ungkapan konten jika ada mapnenek
moyang elemen, yang berarti bahwa mereka tidak perlu anak-anak langsung map.
·
The fieldset
elemen tidak lagi membutuhkan legend
anak.
4. API
HTML telah memperkenalkan banyak API baru dan telah memperluas, mengubah, atau menghapus beberapa API yang ada.
4.1. API BARU
HTML memperkenalkan sejumlah API yang membantu dalam membuat aplikasi Web. Ini dapat digunakan bersama dengan elemen baru yang diperkenalkan untuk aplikasi:
·
Elemen media ( videodan
audio)
memiliki API untuk mengontrol pemutaran, menyinkronkan beberapa elemen media,
dan trek teks berjangka waktu (mis. Subtitle).
·
API untuk validasi batasan formulir (misalnya setCustomValidity()metode).
· API yang memungkinkan aplikasi Web offline, dengan cache aplikasi .
·
API yang memungkinkan aplikasi Web untuk
mendaftarkan dirinya sendiri ke protokol atau jenis media tertentu, menggunakan
registerProtocolHandler()
dan registerContentHandler().
·
Mengedit API dalam kombinasi dengan contenteditable
atribut global baru .
·
API yang mengekspos komponen URL dokumen dan
memungkinkan skrip untuk menavigasi, mengalihkan, dan memuat ulang ( Locationantarmuka).
·
API yang memperlihatkan riwayat sesi dan
memungkinkan skrip untuk memperbarui URL dokumen tanpa benar-benar menavigasi,
sehingga aplikasi tidak perlu menyalahgunakan komponen fragmen untuk navigasi
"Ajax-style" ( Historyantarmuka).
·
API untuk konversi base64 ( atob()dan
btoa()metode).
·
API untuk menjadwalkan callback berbasis timer (
setTimeout()dan
setInterval()).
·
API untuk meminta pengguna ( alert(),
confirm(),
prompt()).
·
API untuk mencetak dokumen ( print()).
·
API untuk menangani penyedia pencarian ( AddSearchProvider()dan
IsSearchProviderInstalled()).
·
The Window,
Navigatordan
External
antarmuka telah ditetapkan.
4.2. API yang dirubah
Fitur-fitur berikut dari DOM Level 2 HTML diubah dengan berbagai cara:
·
document.title
sekarang menciutkan ruang kosong saat mendapatkan.
·
document.domain
dibuat dapat diatur, yang dapat mengubah asal skrip efektif dokumen.
·
document.open()sekarang
membersihkan dokumen (jika dipanggil dengan dua atau kurang argumen), atau
bertindak seperti window.open()(jika
dipanggil dengan tiga atau empat argumen). Dalam kasus sebelumnya, melempar
pengecualian dalam XML.
·
document.close(),
document.write()dan
document.writeln()melempar
pengecualian dalam XML. Dua yang terakhir sekarang mendukung argumen variadic;
mereka dapat menambahkan teks ke aliran masukan dokumen saat masih diurai,
menyiratkan panggilan ke document.open(),
atau diabaikan sama sekali dalam beberapa kasus.
·
document.getElementsByName()
sekarang mengembalikan semua elemen HTML dengan nameatribut yang cocok dengan argumen.
·
elements
pada HTMLFormElementsaat
mengembalikan HTMLFormControlsCollectiondari
button,
fieldset,
input,
keygen,
object,
output,
selectdan
textareaunsur-unsur.
lengthmengembalikan
jumlah node dalam elements.
·
add()pada
HTMLSelectElementsaat
juga menerima integer sebagai argumen kedua.
·
remove()
pada HTMLSelectElementsekarang
menghapus elemen pertama dalam koleksi jika argumen di luar batas.
·
adan
areaelemen
sekarang dirangkai dengan hrefatributnya.
·
Metode click(),
focus()dan
blur()sekarang
tersedia di semua elemen HTML.
4.3. Ekstensi ke Document
DOM Level 2 HTML memiliki HTMLDocumentantarmuka yang diwarisi dari
Documentdan
menyediakan anggota khusus HTML pada dokumen. HTML telah memindahkan anggota
ini ke Documentantarmuka,
dan memperluasnya dengan berbagai cara. Karena semua dokumen menggunakan Documentantarmuka,
anggota khusus HTML sekarang tersedia di semua dokumen, jadi mereka juga dapat
digunakan dalam misalnya dokumen SVG. Ini juga memiliki beberapa anggota baru:
·
location,
lastModifieddan
readyStateuntuk
membantu manajemen metadata sumber daya.
·
dir,
head,
embeds,
plugins,
scripts,
Dan nama pengambil generik, untuk mengakses berbagai bagian dari pohon DOM.
·
activeElementdan
hasFocusuntuk
menentukan elemen mana yang saat ini difokuskan dan apakah Documentmasing-masing
memiliki fokus.
·
designMode,
execCommand(),
queryCommandEnabled(),
queryCommandIndeterm(),
queryCommandState(),
queryCommandSupported(),
queryCommandValue()Untuk
mengedit API.
·
Semua atribut IDL pengendali peristiwa. Juga, onreadystatechangeadalah
atribut IDL pengendali kejadian khusus yang hanya tersedia di Document.
Skrip yang ada yang
memodifikasi prototipe HTMLDocument
harus terus berfungsi karena window.HTMLDocumentsekarang
mengembalikan Documentobjek
antarmuka.
4.4. Ekstensi ke HTML Element
HTML Element
antar muka juga telah memperoleh beberapa ekstensi di HTML:
·
translate,
hidden,
tabIndex,
accessKey,
contentEditable,
spellcheckDan
stylemencerminkan
atribut konten.
·
datasetadalah
fitur kemudahan untuk menangani data-*atribut,
yang diekspos sebagai properti kandang unta; misalnya, elm.dataset.fooBar = 'test'menyetel data-foo-baratribut konten pada elm.
·
click(),
focus()dan
blur()memungkinkan
skrip untuk mensimulasikan klik dan memindahkan fokus.
·
accessKeyLabelmemberikan
tombol pintas yang telah ditetapkan agen pengguna untuk elemen tersebut, yang
dapat dipengaruhi oleh pengembang Web dengan accesskeyatribut
tersebut.
·
isContentEditable
mengembalikan nilai true jika elemen dapat diedit.
· Semua atribut IDL pengendali peristiwa.
Beberapa anggota telah ditentukan
sebelumnya HTMLElementtetapi
telah dipindahkan ke Element
antarmuka dalam standar DOM: [DOM]
·
id mencerminkan
id atribut konten.
·
classNamemencerminkan
classatribut konten.
·
classListadalah
aksesor yang nyaman untuk className.
Objek itu kembali memperlihatkan metode ( contains(),
add(), remove(), dan toggle()) untuk memanipulasi kelas
elemen.
·
getElementsByClassName()
mengembalikan daftar elemen dengan kelas yang ditentukan.
4.5. Ekstensi ke Antar muka Lain
Beberapa antarmuka di DOM Level 2 HTML telah diperpanjang.
·
HTMLOptionsCollectionsekarang
memiliki penelepon warisan, pembuat setter, dan anggota add(),
remove()danselectedIndex
·
HTMLLinkElementdan
HTMLStyleElementsekarang
mengimplementasikan LinkStyleantarmuka
dari CSSOM. [CSSOM]
·
HTMLFormElementsekarang
memiliki getter bernama dan getter terindeks, serta checkValidity()metodenya
.
·
HTMLSelectElementsekarang
memiliki getter, item()
dan namedItem()metode,
pencipta setter, selectedOptionsdan
labelsatribut
IDL, dan anggota untuk bentuk kendala validasi API: willValidate,
validity,
validationMessage,
checkValidity(),
reportValidity(),
dan setCustomValidity().
·
HTMLOptionElementsekarang
memiliki konstruktor Option.
·
HTMLInputElementkini
memiliki anggota files,
height,
indeterminate,
list,
valueAsDate,
valueAsNumber,
width,
stepUp(),
stepDown(),
bentuk kendala anggota validasi API, labelsdan
anggota untuk bidang teks seleksi API: selectionStart,
selectionEnd,
selectionDirection,
setSelectionRange()
dan setRangeText().
·
HTMLTextAreaElementsekarang
memiliki anggota textLength,
anggota API validasi batasan formulir, labelsdan
anggota API pemilihan bidang teks.
·
HTMLButtonElementsekarang
memiliki anggota API validasi batasan formulir dan labels.
·
HTMLLabelElementsekarang
memiliki anggota control.
·
HTMLFieldSetElementsekarang
memiliki anggota type,
elements
dan anggota API validasi batasan formulir.
·
HTMLAnchorElementkini
memiliki anggota relList,
textdan
mengimplementasikan URLUtilsantarmuka
yang memiliki anggota href,
origin,
protocol,
username,
password,
host,
hostname,
port,
pathname,
search,
searchParamsdan
hash.
HTMLLinkElementdan
HTMLAreaElementjuga
memiliki relListatribut
IDL. HTMLAreaElementjuga
mengimplementasikan URLUtilsantarmuka.
·
HTMLImageElementsekarang
memiliki konstruktor Image,
dan anggota naturalWidth,
naturalHeightdan
complete.
·
HTMLObjectElementsekarang
memiliki anggota contentWindow,
anggota API validasi batasan formulir, dan pemanggil warisan.
·
HTMLMapElementsekarang
memiliki anggota images.
·
HTMLTableElementsekarang
memiliki anggota createTBody()
.
·
HTMLIFrameElementsekarang
memiliki anggota contentWindow.
Selain itu, sebagian besar
atribut konten baru juga memiliki atribut IDL yang sesuai pada antarmuka elemen,
misalnya sizesatribut
IDL HTMLLinkElementyang
mencerminkan sizes
atribut konten.
4.6. API yang Usang
Beberapa API sekarang dihapus
seluruhnya, atau ditandai sebagai usang. Semua atribut IDL yang mencerminkan
atribut konten itu sendiri sudah usang, sekarang juga sudah usang; misalnya, bgColoratribut
IDL HTMLBodyElementyang
mencerminkan bgcolor
atribut konten yang sudah usang sekarang sudah usang.
Antarmuka berikut ditandai
usang karena unsur-unsur yang usang: HTMLAppletElement,
HTMLFrameSetElement,
HTMLFrameElement,
HTMLDirectoryElementdan
HTMLFontElement.
The HTMLIsIndexElementantarmuka dihapus sama
sekali sejak parser HTML memperluas sebuah isindextag
menjadi elemen-elemen lainnya. The HTMLBaseFontElementantarmuka
juga dihapus karena elemen tidak berpengaruh.
Anggota HTMLDocumentantarmuka berikut (yang
sekarang telah dipindahkan ke Document)
sekarang sudah usang: anchorsdan
applets.



Posting Komentar