繁体   English   中英

HTML 4.01严格标准

[英]HTML 4.01 Strict Standards

我只是通过w3c验证服务( http://validator.w3.org/check )运行了此简单代码。 这是我正在运行的代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd"
    >
<html lang="en">
<head>
    <title><!-- Insert your title here --></title>
</head>
<body>
<form name="testform" action="/" method="post">
    <input type="text" name="testfield">
</form>
</body>
</html>

我在输入字段上收到以下错误:

第10行,第40列:此处的文档类型不允许元素“ INPUT”; 缺少“ P”,“ H1”,“ H2”,“ H3”,“ H4”,“ H5”,“ H6”,“ PRE”,“ DIV”,“ ADDRESS”开始标记之一

我没有发现任何问题。 有任何想法吗?

问题在于如何在DTD中定义FORM元素:

<!ELEMENT FORM - - (%block;|SCRIPT)+ -(FORM) -- interactive form -->

因此,它可以具有%block (除了FORM )或SCRIPT元素。

并且%block定义为:

<!ENTITY % block
 "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT |
  BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS">

其余的:

<!ENTITY % heading "H1|H2|H3|H4|H5|H6">

<!ENTITY % list "UL | OL">

<!ENTITY % preformatted "PRE">

由于您的表单不包含任何直接子表单,因此该页面无法通过验证。

稍微玩一下-在“输入”标签周围放一个“ div”标签:

<div>
    <input type="text" name="testfield">
</div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM