【问题标题】:DOCTYPE is not rendered if declared in PHP include?如果在 PHP 包含中声明 DOCTYPE 不呈现?
【发布时间】:2011-05-02 06:40:47
【问题描述】:

到目前为止,我已经声明了示例

>test.php
<!DOCTYPE HTML>
<html>
...

在 index.php 中

>index.php
include 'test.php';
...

据我所知,在除 IE8 之外的所有设备上都可以正常工作,它将以 quirksmode 呈现文档。知道为什么吗?

【问题讨论】:

  • 如果在您计算机上的本地 HTML 文档中,完全相同的 HTML 代码是否可以工作?
  • 呈现的 HTML 是什么样的? Doctype 是最先出现的吗?检查任何byte order marks
  • @Phil - 你的评论应该是一个答案。
  • 感谢您的回复。从调试器和生成的源代码来看,它看起来完全正常,只是没有 doctype。本地与否,我试过了。

标签: php html include doctype quirks-mode


【解决方案1】:

使用以下流程:

  • 检查&lt;!doctype html&gt;是否不是第一行;这将触发怪癖模式

  • 检查编码是否为UTF-16;这需要一个字节顺序标记

  • 检查 HTML 文档的文件编码以确保它们匹配

  • 刷新缓冲区以输出文档类型

参考文献

【讨论】:

    猜你喜欢
    • 2020-06-16
    • 1970-01-01
    • 2015-03-19
    • 2021-01-05
    • 1970-01-01
    • 1970-01-01
    • 2016-06-18
    • 1970-01-01
    • 2014-01-25
    相关资源
    最近更新 更多