Why doesn't the validator like my <link ... /> or <meta ... />?
HTML is based on SGML and uses an SGML feature (called SHORTTAG) (note that this is not the case with XHTML).
With this feature enabled, the "/" in <link ... /> or <meta ... /> already closes the link (or meta) tag, and the ">" becomes some regular text, which is not allowed in the <head> element. Since </head><body> is optional in HTML (again, not in XHTML), it is silently inserted, thus head-only elements like meta and style as well as "</head>" and "<body>", which may appear only once, become false.
Du har en meta-tag i din kod. Så som jag förstår saken, har då både </head> och <body> lagts till i all tysthet, varför det blir fel att ha dem igen. Hade det inte varit för detta tysta tillägg av taggar, skulle det ha stämt.
Taggarna har inte lags till, eftersom de redan finns med i dokumentet.
Problemet är att <meta /> tolkas som <meta>>, och > är rå text och får inte förekomma inom HEAD.
Exempel på ett giltigt dokument som använder SHORTTAG:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<title/Test/
<p<a href="#"/Testlänk/ <br/ Test
Väldigt få webbläsare har implementerat SHORTTAG, så det är inte särskilt användbart. Och den webbläsare som har stöd för SHORTTAG har problem med alla XHTML-filer som serverats som text/html...
Taggarna har inte lags till, eftersom de redan finns med i dokumentet.
Fast om man ska tro faq:en som validatorn länkade till, var själva problemet att taggarna faktiskt hade lagts till, trots att de redan fanns i dokumentet. Och anledningen till detta, var att ">" inte fick förekomma som vanlig text i head-blocket. Alltså lades en </head> och en <body> in innan denna ">". Och därmed blev de redan befintliga </head> och <body> felaktiga. Så tolkar jag det som stod i faq:en. Tolkar jag fel? Har faq:en fel?
262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e