.html
和.xhtml
文件扩展名有什么区别?
.xhtml
使用扩展有什么好处?
为什么我们不使用.xhtml
扩展,仅仅是因为 IE 吗?
带有 IE 8 的 .xhtml 扩展名怎么样?
.xhtml
IE以外的其他浏览器是否支持?如果是,那么当所有浏览器都支持该.xhtml
扩展时,我们将获得什么好处。我们会停止使用.html
吗?
为什么我们使用 XHTML 文档类型,但使用.html
扩展名保存这些文件?
.html
和.xhtml
文件扩展名有什么区别?
.xhtml
使用扩展有什么好处?
为什么我们不使用.xhtml
扩展,仅仅是因为 IE 吗?
带有 IE 8 的 .xhtml 扩展名怎么样?
.xhtml
IE以外的其他浏览器是否支持?如果是,那么当所有浏览器都支持该.xhtml
扩展时,我们将获得什么好处。我们会停止使用.html
吗?
为什么我们使用 XHTML 文档类型,但使用.html
扩展名保存这些文件?
如果通过 HTTP 提供服务,则文件扩展名没有任何意义。唯一重要的信息是指定资源的媒体类型的Content-Type标头字段。
但是当从本地文件系统提供服务时,媒体类型通常由文件扩展名标识。
编辑我认为即使是 XHTML 也使用扩展名.html 的原因是因为 XHTML 是仅具有 XML 语法的 HTML,并且每个人都习惯于.html用于 HTML 文档。(尽管大多数 XHTML 文档实际上是作为 HTML 提供的,因为媒体类型text/html表示 HTML,无论文档类型声明如何。)
但同样:通过 HTTP 请求时不需要扩展。在 HTTP 中,Content-Type标头字段告诉我们应该使用什么媒体类型来解释资源。所以理论上你可以使用任何你想要的扩展,甚至根本不使用扩展(在使用内容协商时很有用)。
使用匹配 MIME 类型的扩展名:
.xhtml
用于application/xhtml+xml
文件.html
用于text/html
文件例如,ePub3 需要.xhtml
:
强烈建议您对所有 EPUB 内容文档使用 .xhtml 扩展名。如果没有该扩展名,浏览器不会将 HTML 内容解释为 application/xhtml+xml。
参考
IE(包括 IE8)是唯一(重要的)不支持 XHTML的浏览器application/xhtml+xml
(对应于xht
或xhtml
扩展名)。
当 IE 支持时,每个人都会转向 XHTML 吗?可能不是。XML 不容易做到正确,尤其是当您必须合并用户提供的数据(例如博客评论)时。(虽然这可能会<iframe sandbox>
在 IE 开始运行之前使用 (X)HTML5 解决。)但是,我没有水晶球,所以我们只能等待,看看会发生什么。
没有人关心文件的名称,只关心它传输的 MIME 类型是什么。
浏览器不(仅)依赖于页面扩展,而是依赖于 MIME 内容类型。例如,通过这种方式,您可以创建一个提供 JPG 图像的 PHP 页面。
我认为 xhtml 扩展名仅用于 XHTML,但很少使用,因为您使用的 HTML 类型是在 DOCTYPE 元素中定义的。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">