2017-09-16 4 views
2

Dies geht Validierung:Warum ist das Eingabegrößenattribut in HTML/XHTML Strict zulässig?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head><title>Test</title></head> 
<body> 
<form action="get"> 
<p><input type="text" size="10" /></p> 
</form> 
</body> 
</html> 

wie das Äquivalent unter HTML 4.01 Strict oder XHTML 1.1.

Das size Attribut scheint mir rein präsentativ zu sein. Warum also hat das W3C es in den strengen Aromen von (X) HTML gelassen?

Antwort

0

Es gibt nicht mehr (offiziell) eine "strikte" Version von HTML. Es gibt jedoch zwei verschiedene Parser: den HTML-Parser (lose) und den XML-Parser (streng). Um Browser verwendet den XML-Parser den folgenden PHP-Code verwenden:

<?php 
if (stristr($_SERVER['HTTP_ACCEPT'],'application/xhtml+xml')) 
{ 
$mime = 'application/xhtml+xml; charset=UTF-8'; 
} 
else {$mime = 'text/html; charset=UTF-8';}//Unless IE6 or lower 
//IE6 or lower should only use 'text/html'. 
header('Content-Type: '.$mime); 
?> 

Ich glaube, dass entweder dieser Teil beaufsichtigt wurde in den frühen Ende der 1990er Jahren oder Anfang der 2000er Jahre oder wenn es nicht wahrscheinlich das size ist Attribut wurde wahrgenommen als die Größe des Textes und nicht die Anzahl der Pixel, die das input-Element hätte gerendert werden sollen. Es ist auch möglich, dass, wenn es nicht übersehen wurde, es aus Gründen der Abwärtskompatibilität gewesen sein könnte (einige Browser haben möglicherweise ohne das Attribut size nicht funktioniert).

Wenn Sie versuchen, Ihre Fähigkeit zu maximieren, clientseitigen Code zu codieren, empfehle ich dringend, zu XHTML5 zu wechseln. Das ist im Detail HTML5 gerendert mit dem XML-Parser. Die Website in meinem Profil ist eine Live-Umgebung, die zeigen viel wenn nicht alles, was Sie wissen möchten, um die grüneren Fehler zu überspringen, wenn Sie noch tief in den Lernprozess sind.

Verwandte Themen