HTML spesifikasyonlarının belirli durumlarda belirli etiketlerin atlanmasına izin verdiği doğrudur, ancak genellikle bunu yapmak mantıksızdır.
İki etkisi vardır - spesifikasyonu daha karmaşık hale getirir, bu da tarayıcı yazarlarının doğru uygulamaları yazmasını zorlaştırır (IE'nin yanlış anlamasıyla gösterildiği gibi).
Bu, spesifikasyonun bu kısımlarındaki tarayıcı hatalarının olasılığını yüksek kılar. Bir web sitesi yazarı olarak, bu etiketleri ekleyerek sorunu önleyebilirsiniz - bu nedenle spesifikasyon zorunda olmanızı söylemese de, yanlış yapma şansını azaltır, bu da iyi bir mühendislik uygulamasıdır.
Dahası, en son HTML 5.1 WG spesifikasyonu şu anda diyor (devam eden bir çalışma olduğunu ve henüz değişebileceğini unutmayın).
Gövde öğesinin başlangıç etiketi, öğe boşsa veya gövde öğesinin içindeki ilk şey bir boşluk karakteri veya yorum değilse, gövde öğesinin içindeki ilk şeyin meta, bağlantı, komut dosyası, stil olmaması dışında çıkarılabilir veya şablon öğesi.
http://www.w3.org/html/wg/drafts/html/master/sections.html#the-body-element
Bu biraz ince. Gövde ve kafayı atlayabilirsiniz, ardından tarayıcı bu öğelerin nereye yerleştirileceğini belirler. Bu, karışıklığa yol açabilecek açık olmama riskini taşır.
Yani bu
<html>
<h1>hello</h1>
<script ... >
...
kod öğesinin gövde öğesinin alt öğesi olmasına neden olur, ancak bu
<html>
<script ... >
<h1>hello</h1>
komut dosyası etiketinin head öğesinin alt öğesi olmasına neden olur.
Bunu yaparak açık olabilirsiniz
<html>
<body>
<script ... >
<h1>hello</h1>
ve sonra hangisine ilk sahip olursanız olun, komut dosyası veya h1, her ikisi de, tahmin edilebilir şekilde gövde öğesinde görünecektir. Bunlar yeniden düzenleme ve kod hata ayıklama sırasında göz ardı kolay şeylerdir. (örneğin, vücuttaki 1. komut dosyası öğesini arayan JS'niz var - ikinci snippet'te çalışmayı durdurur).
Genel bir kural olarak, her şey hakkında açık olmak her şeyi yorumlamaya açık bırakmaktan daha iyidir. Bu bakımdan XHTML daha iyidir, çünkü kodunuzdaki eleman yapınız hakkında tamamen açık olmanızı zorlar, bu da onu daha basit ve dolayısıyla yanlış yorumlamaya daha az eğilimli kılar.
Yani evet, onları atlayabilir ve teknik olarak geçerli olabilirsiniz, ancak genellikle bunu yapmak mantıksızdır.
title
etiketi gerektirir . Bu geçerli olduğunu düşündüğü en küçük belgedir:<!DOCTYPE html> <title>A</title>