什么使XHTML(和其他XML语言)应用程序,而其他基于SGML的语言是文本?不是XML文件的文本文件?为什么HTML文本的MIME类型是XHTML应用程序的MIME类型?
回答
XHTML是XML的一个子集; XML的媒体类型/ MIME为text/xml,而XHTML的媒体类型/ MIME为application/xhtml + xml。
通常,HTML基本上被视为非常松散地解释为纯文本。由于HTML的垃圾状态信誉XHTML是为了强制网页设计师和Web开发人员编写干净的HTML代码而创建的。 Gecko(Firefox)和Presto(Opera)浏览器正确地打破页面并显示格式错误的XML解析错误,而WebKit(Chrome/Safari)和Trident(仅限Internet Explorer 9.0+)在失败时失败,仅停止呈现页面。
用作text/html的XHTML应用程序不是XHTML,它是带有XHTML文档类型的HTML。
要将XHTML代码作为XHTML应用程序提供,它必须作为application/xhtml + xml提供。
XHTML也打算向后兼容HTML。
下面的PHP代码将查看客户端浏览器发送的头文件,并在浏览器支持它的情况下将该页面作为XHTML应用程序提供(所有Chrome,Safari 3.0+(可能为1.0)),Mozilla Suite 0.8 +/all Firefox和Opera 7.0+(可能为6.0)支持XHTML。只有Internet Explorer 8.0和更高版本才具有不支持XHTML的市场份额。 KHTML浏览器(Konqueror)DO支持XHTML,但我认为4.4不会向服务器提供正确的头文件。
<?php
$http_accept_xhtml = stristr($_SERVER['HTTP_ACCEPT'],'application/xhtml+xml');
if ($http_accept_xhtml) {$mime = 'application/xhtml+xml';}
else {$mime = 'text/html';}
header('Content-Type: '.$mime);
echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";
?>
如果您足够聪明,在遇到错误时能够修复错误,那么XHTML比HTML更好。它更严格,但这就是重点,更不用说主观性。 XHTML中的X代表可扩展性,所以如果你做了一些阅读,它在HTML之前就支持SVG和其他语言。
对于多种数据,有几种可接受的MIME类型。例如,XML可以是text/xml或application/xml(http://tools.ietf.org/html/rfc3023)。
HTTP充满了多种正确的方式来做东西;这是许多人设计和使用的副产品。它也在不断发展。一般来说,即使只有一种设计方法,但可以有多种方式来使用它们,并且在有足够的人接受它们之后,这些方法就成为事实上的标准。
如果你没有发现任何问题,说你的XHTML和SGML都是“应用程序”,一切仍然有效,它让你更快乐,那就去做吧。
- 1. xHTML IE7 MIME类型
- 2. 什么MIME类型是纯文本?
- 3. 什么是.py文件的MIME类型?
- 4. 什么是wsdl文件的mime类型?
- 5. 使用带有“text/html”MIME类型而不是HTML doctype的XHTML 1.1文档类型有什么好处吗?
- 6. JSON的正确MIME类型是什么?
- 7. 什么是.mobileprovision的MIME类型
- 8. 这些Google Drive MIME类型是什么?
- 9. 什么是.do文件?它的MIME类型是什么?
- 10. 指定MIME类型的PHP文件作为应用程序/ javascript
- 11. MIME实体的通用MIME类型?
- 12. HTML图像 - MIME类型
- 13. tgz的MIME类型
- 14. YAML mime类型?
- 15. WPF&Mime类型
- 16. Erlang mime类型
- 17. cvs2svn MIME类型
- 18. MIME类型的文件
- 19. 我应该为MPP文件使用什么MIME类型?
- 20. 为html-email声明MIME类型
- 21. UIWebView和文件MIME类型
- 22. .alx文件MIME类型
- 23. URN for MIME类型
- 24. MIME类型欺骗
- 25. mime类型设置
- 26. 配置MIME类型
- 27. 什么应该是.rpm,'.swi'和'.swix'的常见MIME类型?
- 28. MIME类型的资源类型:视频/ *
- 29. 为您的XHTML提供正确的MIME类型
- 30. 谷歌Apis V2的HTML MIME /类型
HTML不再基于SGML。 – 2012-02-05 16:58:30