2014-03-26 76 views
2

我有我的网页上下面的错误,当http://validator.w3.org/ 确认没有属性“占位” 没有属性“自动完成”没有属性“占位”,并没有属性“自动完成”

详细,它说:

59行,列81:没有属性“占位” ...... RD“类型=‘文本’的风格=‘宽度:500像素;’占位符=”什么“自动完成=”关“/> ✉ 您已在您的d中使用上述属性ocument,但是您使用的文档类型不支持该元素的该属性。此错误通常是由于“严格”文档类型与使用框架的文档(例如,您必须使用“过渡”文档类型以获取“目标”属性)不正确地使用或通过使用供应商专有的扩展名(例如“ marginheight“(这通常是通过使用CSS来达到预期的效果)。

此错误也可能导致如果元素本身 不支持您所使用的文档类型,作为一个未定义的元素不会有任何 支持的属性;在这种情况下,请参阅元素未定义的错误消息 以获取更多信息。

如何解决:检查元素和属性,拼写和壳体 (记住XHTML是所有小写)和/或检查,它们都是 允许在所选择的文件类型,和/或使用CSS而不是这个 属性。如果在使用元素 将闪存媒体合并到网页中时收到此错误,请参阅有效的 闪存中的FAQ项目。

HTML标记是在这里:<input name="keyword" id="keyword" type="text" style="width:500px;" placeholder=" What" autocomplete="off" />

回答

6

<!DOCTYPE HTML> 
<html> 
<head> 
<TITLE>My first HTML document</TITLE> 
</head> 
<body> 
    <input name="keyword" id="keyword" type="text" style="width:500px;" placeholder=" What" autocomplete="off" /> 
</body> 
</html> 

如果您正在使用HTML4或其他任何东西,那么你可以使用下面的这个

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN"> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 

欲了解更多信息的..

http://www.w3.org/TR/html-markup/syntax.html#normal-doctype

1

确保使用HTML5的DOCTYPE <!DOCTYPE html> 这验证。如果您正在使用HTML5,那么你应该用正常的doctype验证HTML5

+0

我有<!DOCTYPE HTML PUBLIC “ - // W3C // DTD XHTML 1.0 Transitional // EN”“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> 在我的网站上。 – Muhammad

+0

当选择DOCTYPE HTML5实验时上述错误消失,但是这个警告:DOCTYPE Override有效! 检测到的DOCTYPE声明“<!DOCTYPE html PUBLIC” - // W3C // DTD XHTML 1.0 Transitional // EN“”http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“ >“已被取消,并插入”HTML5“的DOCTYPE,但即使没有错误显示在文档下方,也不会有效,除非您更新它以反映此新DOCTYPE。 – Muhammad

+1

所以最近发生的事情是...你有一个页面混合html ...新旧... W3C验证程序只验证..所有旧的或所有新的HTML标准(我相信)...所以你试图验证旧html的新html5属性..如果你必须验证它...或者删除html5支持的属性并使用旧的验证器。或者将整个页面更新为html5标准,并使用新的验证器... – JayD