【发布时间】:2014-08-05 23:05:52
【问题描述】:
所以当我在 W3C 上阅读时,我可以在我的文件开头添加一个 XML 指令,如下所示:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html>
但我的文件需要是动态的,这就是我使用 .php 扩展名的原因。当然我可以在 DOCTYPE 之前echo '<?xml version="1.0" encoding="UTF-8" ?>';,但内容类型仍然是text/html,如果我在我的 PHP 标头中将其更改为application/xhtml+xml, cahrset=UTF-8,系统会提示我下载。我知道我可以只使用 text/html 内容类型,但我希望至少有有效的 xHTML(和 CSS)。我一直遵循标准,我已经习惯了。我不会开始编写无效的 HTML/xHTML。
编辑:
代码如下:
header('Content-Type: application/xhtml+xml; charset=UTF-8');
编辑 2:
<!-- ... -->
<noscript>
<link href="./no-java-script.css.php" rel="stylesheet" type="text/css" media="all" />
<meta http-equiv="refresh" content="0; url=/no-javascript.aspx" />
</noscript>
<!-- ... -->
<noscript>
<div onload="return false;" class="no-script"><p>Sorry, your browser does not support JavaScript! Click <a href="/no-javascript.aspx" hreflang="en-US" class="show">here</a> if it doesn't redirect you automatically.</p></div>
</noscript>
<!-- ... -->
【问题讨论】:
-
如何将标头设置为
application/xhtml+xml?能否将代码添加到问题中? -
您使用的是哪个浏览器?你不想说,你还在用IE XP)?
-
Win7 SP1,在 FF 31.0、IE 11 和 Chrome 36 中测试。
-
哎呀,看起来我打错了,这就是它无法识别代码的原因......无论如何我真的很想使用
<noscript>标签......但是很好 - 回到text/html,xml 声明是可选的,它不会做那么多,但是noscript标签可以让我从禁用 JavaScript 的用户那里拯救我,所以我宁愿选择noscript... sniff sniff 做出这样的决定有多难...我想两者兼得,但规范已被破坏,我必须遵循它。也许将来它会最终修复。 -
我知道你的意思兄弟,我讨厌这样艰难的决定......
标签: php xml xhtml content-type xhtml-1.0-strict