为什么在HTML/XHTML严格中允许输入大小属性?
问题描述:
这通过验证:为什么在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中呢?
答
不再有(正式)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。我的个人资料中的网站是一个现场环境,如果您还没有深入学习过程,那么您可能想知道如果不是所有您想知道的内容,都可以跳过更多的错误来演示。