2017-09-16 312 views
2

這通過驗證:爲什麼在HTML/XHTML嚴格中允許輸入大小屬性?

<!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> 

一樣HTML 4.01嚴格或XHTML 1.1下的等效。

size屬性似乎純屬於我的表現形式。那麼爲什麼W3C將它留在嚴格的(X)HTML中呢?

回答

0

不再有(正式)HTML的「嚴格」版本。然而,有兩種不同的解析器:HTML解析器(鬆散)和XML解析器(嚴格)。爲了使瀏覽器使用的XML解析器使用下面的PHP代碼:

<?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); 
?> 

我相信,無論是這部分在早期90年代末監督背部或21世紀初如果它是不容易的size屬性被感知爲文本的大小,而不是input元素應呈現爲的像素數量。也可能的是,如果它不被忽略,它可能是爲了向後兼容的目的(某些瀏覽器可能沒有size屬性就沒有工作)。

如果您希望最大化您的代碼客戶端代碼的能力,我強烈建議轉移到XHTML5。這是更詳細的使用XML解析器呈現的HTML5。我的個人資料中的網站是一個現場環境,如果您還沒有深入學習過程,那麼您可能想知道如果不是所有您想知道的內容,都可以跳過更多的錯誤來演示

相關問題