HTML5 ile HTML4.01 ve XHTML 1.0 arasındaki farklar nelerdir?
sobes.tech yapay zeka
AI'dan gelen yanıt
HTML5, HTML4.01'in olanaklarını <nav>, <article>, <aside> gibi semantik etiketler, form girişleri için yeni türler (email, date, range), eklentisiz medya desteği (<video>, <audio>), çevrimdışı çalışma API'leri (Service Worker, Cache Storage) ve yerel depolama (localStorage, sessionStorage) ile WebSocket API'leri ile genişletir. HTML5'in sözdizimi daha esnektir, belirli durumlarda bazı kapanış etiketleri ve özniteliklerin atlanmasına izin verir.
XHTML 1.0, HTML 4.01'in XML uygulaması olarak yeniden formüle edilmesidir. Ana fark, daha katı bir sözdizimi olmasıdır: tüm etiketler kapanmalıdır (örneğin <br />, <img> gibi kendiliğinden kapananlar dahil), tüm öznitelikler tırnak içinde olmalıdır ve etiket ile öznitelik isimleri büyük/küçük harfe duyarlıdır. Amaç, XML parsers ile daha iyi uyumluluk için daha yapılandırılmış ve geçerli bir sözdizisi oluşturmaktır. Ancak, pratikte, çoğu tarayıcı XHTML'i HTML gibi işler ve belge MIME tipi application/xhtml+xml değilse katı kuralları görmezden gelir.
Tablo karşılaştırması:
| Özellik | HTML4.01 | XHTML 1.0 | HTML5 |
|---|---|---|---|
| Sözdizimi | Daha esnek | Katı (XML tabanlı) | XHTML'den daha esnek, yapılandırılmış |
| Etiket kapama | Her zaman gerekmez | Her zaman gerek (<br />, <img>) |
Bazen gerekmez (<p>, <li>, vb.) |
| Büyük/küçük harf | Duyarsız | Duyarlı | Duyarsız |
| Öznitelik tırnakları | Her zaman gerekmez | Her zaman gerek | Belirli durumlarda gerekmez |
| Medya desteği | Eklenti gerektirir | Eklenti gerektirir | Yerel (<video>, <audio>) |
| Semantik etiketler | Daha az (<div>, <span>) |
HTML4.01 ile benzer | Daha fazla (<nav>, <article>, <aside>) |
| Yeni API'ler | Sınırlı | Sınırlı | WebSocket, Yerel Depolama, Canvas, SVG |
| Çevrimdışı destek | Neredeyse yok | Neredeyse yok | Cache API, Service Worker |
| MIME tipi | text/html |
application/xhtml+xml (katı), text/html (HTML gibi) |
text/html |
| Genişletilebilirlik | Sınırlı | XML tabanlı | API ve özel elementler aracılığıyla (gelecekte) |
Sözdizimi örneği:
<!-- HTML 4.01 -->
<p>Paragraf.
<img src="image.jpg" alt=Resim>
<!-- XHTML 1.0 -->
<p>Paragraf.</p>
<img src="image.jpg" alt="Resim" />
<!-- HTML5 -->
<p>Paragraf.
<img src="image.jpg" alt="Resim">
HTML5, web geliştirme için de-facto standart haline gelmiş olup, HTML4.01'in esnekliğini yeni özelliklerle birleştirir ve kısmen XHTML'in katılığına miras kalmıştır, uyumluluğa odaklanır.