因此,当我在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>
<!-- ... -->
答案 0 :(得分:1)
看一下这个文件:
http://www.webstandards.org/learn/articles/askw3c/sep2003/
但有些浏览器不了解application / xhtml + xml。
确实,这是当前采用的最大问题之一 新的MIME类型,特别是因为Internet Explorer没有 认识它(至少对于Windows和Windows上的任何版本都高达6.x) 苹果系统)。当然,这是采用新的常见问题 技术,它通常会随着时间的推移而改善。
所以是的,我们应该在几年内使用application/xhtml+xml
。目前这是一个坏主意,因为并非所有常用浏览器都支持它。
所以我建议:在未来5年内使用text/html
。好消息是,Xp支持结束了。有时候可能会来这一天,最后一个IE 6版本被淘汰;)
答案 1 :(得分:0)
当echo
的php.ini值为short_open_tag
或on
时,您必须1
PHP中的XML声明行(这是默认值,并且很常见)。所以,这一切都没问题。
至于标题:application/xhtml+xml
MIME类型可能是正确的,但(如您所见),某些浏览器本身并未设置为处理此类型,因此他们提供下载它。关于如何处理这个问题有很多讨论,例如参见http://www.webstandards.org/learn/articles/askw3c/sep2003/或输入&#34; xhtml mime type&#34;进入你最喜欢的搜索引擎。