【问题标题】:Code not validating, possible incorrect markup?代码不验证,可能不正确的标记?
【发布时间】:2014-08-06 19:56:56
【问题描述】:

我无法使用 W3C 验证此代码,文档类型为 <!doctype html>,据我所知,这是 HTML5 文档类型。

     <?php 
   echo "<img src='uploads/picture01.jpg?".filemtime ('uploads/picture01.jpg')."' class='img' alt='Bass Clef Photography Demo Picture One'/>";
   echo "<img src='uploads/picture02.jpg?".filemtime ('uploads/picture02.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Two'/>";
   echo "<img src='uploads/picture03.jpg?".filemtime ('uploads/picture03.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Three'/>";
   echo "<img src='uploads/picture04.jpg?".filemtime ('uploads/picture04.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Four'/>";
   echo "<img src='uploads/picture05.jpg?".filemtime ('uploads/picture05.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Five'/>";
   echo "<img src='uploads/picture06.jpg?".filemtime ('uploads/picture06.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Six'/>";
   echo "<img src='uploads/picture07.jpg?".filemtime ('uploads/picture07.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Seven'/>";
   echo "<img src='uploads/picture08.jpg?".filemtime ('uploads/picture08.jpg')."' class='img' alt='Bass Clef Photography Demo Picture Eight'/>";

   ?>

我得到的每一行的错误是;

生成的代码,

<img src='uploads/picture01.jpg?1405031988' class='img' alt='Bass Clef Photography Demo Picture One'/>
<img src='uploads/picture02.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Two'/>
<img src='uploads/picture03.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Three'/>
<img src='uploads/picture04.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Four'/>
<img src='uploads/picture05.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Five'/>
<img src='uploads/picture06.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Six'/>
<img src='uploads/picture07.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Seven'/>
<img src='uploads/picture08.jpg?1397567043' class='img' alt='Bass Clef Photography Demo Picture Eight'/> 

注意。我已将文件时间附加到每个图像以停止图像的浏览器缓存。

【问题讨论】:

    标签: php html validation w3c-validation


    【解决方案1】:

    您在图片名称后缺少结束 '

    <?php 
       echo "<img src='uploads/picture01.jpg?" .filemtime ('uploads/picture01.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture One'/>";
       echo "<img src='uploads/picture02.jpg?" .filemtime ('uploads/picture02.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Two'/>";
       echo "<img src='uploads/picture03.jpg?" .filemtime ('uploads/picture03.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Three'/>";
       echo "<img src='uploads/picture04.jpg?" .filemtime ('uploads/picture04.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Four'/>";
       echo "<img src='uploads/picture05.jpg?" .filemtime ('uploads/picture05.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Five'/>";
       echo "<img src='uploads/picture06.jpg?" .filemtime ('uploads/picture06.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Six'/>";
       echo "<img src='uploads/picture07.jpg?" .filemtime ('uploads/picture07.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Seven'/>";
       echo "<img src='uploads/picture08.jpg?" .filemtime ('uploads/picture08.jpg') . "' class='img' alt='Bass Clef Photography Demo Picture Eight'/>";
    
       ?>
    

    编辑:交换双引号和单引号

    <?php 
       echo '<img src="uploads/picture01.jpg?' .filemtime ('uploads/picture01.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture One" />';
       echo '<img src="uploads/picture02.jpg?' .filemtime ('uploads/picture02.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Two" />';
       echo '<img src="uploads/picture03.jpg?' .filemtime ('uploads/picture03.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Three" />';
       echo '<img src="uploads/picture04.jpg?' .filemtime ('uploads/picture04.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Four" />';
       echo '<img src="uploads/picture05.jpg?' .filemtime ('uploads/picture05.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Five" />';
       echo '<img src="uploads/picture06.jpg?' .filemtime ('uploads/picture06.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Six" />';
       echo '<img src="uploads/picture07.jpg?' .filemtime ('uploads/picture07.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Seven" />';
       echo '<img src="uploads/picture08.jpg?' .filemtime ('uploads/picture08.jpg') . '" class="img" alt="Bass Clef Photography Demo Picture Eight" />';
    
       ?>
    

    【讨论】:

    • 谢谢,在服务器端渲染后查看页面时,确实可以正确显示标记,但错误仍然存​​在。
    • 我已按照您的建议使用新标记和新错误消息修改了问题。
    • 你能把生成的 HTML 也贴一下吗?
    • 您确定这些错误来自该代码吗?我没有看到它在那里谈论的任何错误。
    • 我认为通过 HTML5 规范,您可以互换使用它们。也许验证者知道我们不知道的事情?
    【解决方案2】:

    W3C Markup Validation Service 检查文档是否使用有效的 HTML

    您收到错误是因为您尝试验证包含 PHP 的文档:验证器尝试将其解释为 HTML。

    解决方案:验证生成的文档(在 PHP 运行之后)。你会看到你的 sn-p 是有效的 HTML5。

    【讨论】:

      猜你喜欢
      • 2013-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-19
      • 2019-07-18
      相关资源
      最近更新 更多