元素 "embed" 未定义,XHTML 1.0 过渡 (W3C)
Element "embed" undefined, XHTML 1.0 Transitional (W3C)
我正在尝试将我的页面验证为 XHTML 1.0 Transitional (W3C)。
我有以下错误:
元素 "embed" 未定义
+
没有属性 "src",
没有属性 "quality",
没有属性 "width"
没有属性 "height",
没有属性 "align",
没有属性 "bgcolor",
没有属性 "name"
请看源码:
<embed src="<?php info(template_directory); ?>/images/top-flash.swf"
quality="high" bgcolor="#000099"
width="960" height="362"
name="flash" align="left"
allowScriptAccess="sameDomain"
allowFullScreen="false"
wmode="transparent"
type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer"
vspace="0" hspace="0"
style="padding:0; margin:0;" />
请帮助我通过此验证。
XHTML1.0 过渡标准中未定义 embed
元素。您必须删除该元素或更改您的文档类型才能通过测试。
正如@MichaelWagner 所说,元素确实是 "not defined in XHTML 1.0 Transitional standard"。
但是,另一种解决方案可能是不更改文档类型,而是将 embed
更改为 object
。
因此,包含 .swf
文件的代码可能如下所示:
<object type="application/x-shockwave-flash" data="TEMPLATE_DIRECTORY/images/top-flash.swf" width="960" height="362" name="flash" align="left" style="padding:0; margin:0;">
<param name="movie" value="TEMPLATE_DIRECTORY/images/top-flash.swf" />
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowfullscreen" value="false" />
<param name="bgcolor" value="#000099" />
<param name="quality" value="high" />
<param name="wmode" value="transparent" />
<a href="http://get.adobe.com/flashplayer/">Get Adobe Flash Player</a>
</object>
结果:
This document was successfully checked as XHTML 1.0 Transitional!
以下转换适用(从 embed
到 object
):
allowScriptAccess="sameDomain"
> <param name="allowScriptAccess"
value="sameDomain" />
allowFullScreen="false"
> <param name="allowfullscreen"
value="false" />
bgcolor="#000099"
> <param name="bgcolor" value="#000099" />
quality="high"
> <param name="quality" value="high" />
wmode="transparent"
> <param name="wmode" value="transparent" />
pluginspage="http://www.macromedia.com/go/getflashplayer"
> <a
href="http://get.adobe.com/flashplayer/">Get Adobe Flash Player</a>
别忘了把TEMPLATE_DIRECTORY/images/top-flash.swf
改成原来的<?php info(template_directory); ?>/images/top-flash.swf
我正在尝试将我的页面验证为 XHTML 1.0 Transitional (W3C)。 我有以下错误: 元素 "embed" 未定义 + 没有属性 "src", 没有属性 "quality", 没有属性 "width" 没有属性 "height", 没有属性 "align", 没有属性 "bgcolor", 没有属性 "name"
请看源码:
<embed src="<?php info(template_directory); ?>/images/top-flash.swf"
quality="high" bgcolor="#000099"
width="960" height="362"
name="flash" align="left"
allowScriptAccess="sameDomain"
allowFullScreen="false"
wmode="transparent"
type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer"
vspace="0" hspace="0"
style="padding:0; margin:0;" />
请帮助我通过此验证。
XHTML1.0 过渡标准中未定义 embed
元素。您必须删除该元素或更改您的文档类型才能通过测试。
正如@MichaelWagner 所说,元素确实是 "not defined in XHTML 1.0 Transitional standard"。
但是,另一种解决方案可能是不更改文档类型,而是将 embed
更改为 object
。
因此,包含 .swf
文件的代码可能如下所示:
<object type="application/x-shockwave-flash" data="TEMPLATE_DIRECTORY/images/top-flash.swf" width="960" height="362" name="flash" align="left" style="padding:0; margin:0;">
<param name="movie" value="TEMPLATE_DIRECTORY/images/top-flash.swf" />
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowfullscreen" value="false" />
<param name="bgcolor" value="#000099" />
<param name="quality" value="high" />
<param name="wmode" value="transparent" />
<a href="http://get.adobe.com/flashplayer/">Get Adobe Flash Player</a>
</object>
结果:
This document was successfully checked as XHTML 1.0 Transitional!
以下转换适用(从 embed
到 object
):
allowScriptAccess="sameDomain"
><param name="allowScriptAccess" value="sameDomain" />
allowFullScreen="false"
><param name="allowfullscreen" value="false" />
bgcolor="#000099"
><param name="bgcolor" value="#000099" />
quality="high"
><param name="quality" value="high" />
wmode="transparent"
><param name="wmode" value="transparent" />
pluginspage="http://www.macromedia.com/go/getflashplayer"
><a href="http://get.adobe.com/flashplayer/">Get Adobe Flash Player</a>
别忘了把TEMPLATE_DIRECTORY/images/top-flash.swf
改成原来的<?php info(template_directory); ?>/images/top-flash.swf