【问题标题】:xhtml validating problem - omittag and system identifierxhtml 验证问题 - 省略标签和系统标识符
【发布时间】:2010-02-24 18:58:44
【问题描述】:

我尝试验证我的代码,但出现了一些错误,我需要帮助:

我得到了一些错误:

  1. 省略了“param”的结束标记,但指定了 OMITTAG NO
  2. 无法为一般实体“color”生成系统标识符
  3. 一般实体“颜色”未定义且没有默认实体

4 引用未被 REFC 分隔符终止

>     > <object
>     > classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
>     > codebase="http://macromedia.com/cabs/swflash.cab#version=6,0,0,0"
>     > id="flaMovie" width="400"
>     > height="235">
>     >             <param name="movie" value="swf/test_movie_purple.swf">
>     >             <param name="FlashVars" value="lan=<?php echo
>     > $_SESSION['lan'];?>&color=<?php echo
>     > $color;?>">
>     >             <param name="quality" value="medium">
>     >             <param name="wmode" value="transparent">
>     >             <embed src="swf/test_movie_purple.swf"
>     > flashvars="lan=<?php echo
>     > $_SESSION['lan'];?>&color=<?php echo
>     > $color;?>" wmode="transparent"
>     > width="400" height="235"
>     > type="application/x-shockwave-flash"></embed></object>

谁能帮我解决这个问题?我要疯了..

【问题讨论】:

    标签: xhtml validation


    【解决方案1】:

    省略“参数”的结束标记

    在 HTML-compatible-XHTML 中,始终为空的元素,如 &lt;img&gt;&lt;param&gt; 必须使用自闭合语法:

    <param name="movie" value="swf/test_movie_purple.swf" />
    

    (注意/。所有其他params 都一样。)

    无法为一般实体“颜色”[和其他错误]生成系统标识符

    您忘记在 URL 中对 color=... 之前的 &amp; 字符进行编码。应该是&amp;amp;color=...

    此外,老式的&lt;embed&gt; 元素在 HTML4 和 XHTML1 中都未定义,因此无论如何它都不会验证。有关 Flash 嵌入方法的一些讨论,请参阅this question

    【讨论】:

    • 你能不能给我一些其他的建议而不是 ?或者我该怎么办?
    • [添加替代链接]
    【解决方案2】:

    好吧,就颜色而言,您试图让 HTML 验证器验证 PHP,这是行不通的。尝试验证代码的编译版本(在 PHP 执行并填写您的变量之后)。

    对于参数结束标记,请确保您的参数编码如下:&lt;param ... /&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多