1

我想知道这个。为什么不是 HTML 4.x 甚至 5?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

如果有的话,我真的应该使用什么?

4

3 回答 3

1

我不确定 BoltClock 是否为 100%。HTML5 从一开始就很酷。它是下一个标准,不容忽视。但我敢肯定,直到 VS 2010 发布后,它才真正成为推荐标准。事实上,他们仍在努力,如果以下文章是正确的,估计要到 2014 年才能完成:

http://en.wikipedia.org/wiki/HTML5

尽管如此,我还是建议下载 VS 的任何扩展以获得完整的 HTML5 CSS3 智能感知并使用它,这样您就可以熟悉它的漂亮功能,并且如果您愿意的话,可以在您的 Web 应用程序中使用它们。

ps 我强烈建议您利用 VS 2012 或它的 express 版本。是的,在我看来,界面很糟糕(与 2010 年的出色界面相比)。但是已添加的功能(例如 MVC4)(例如捆绑和缩小)非常酷!

看看这个!:

http://msdn.microsoft.com/en-us/library/bb386063.aspx

请参阅:ASP.NET 4.5 核心服务,了解我的兴奋之处。

@马丁史密斯。同意,您当然无需下载新版本的 VS 即可获得这些功能。我刚刚发现下载最新版本(对于那些倾向于的人)将为我们提供一个包含 .NET 4.5 的许多最新功能的组合包:)

不过,我很感激你把它说出来。因为如果没有它,我的答案肯定是不完整的。现在每个人都想放弃旧版本的 VS(尤其是仅仅 2 年),因为他们可以将这些包添加到他们现有的工作版本中。

这正是我喜欢 StackOverflow 的原因。可用的贡献者数组帮助我们全面了解可用的选项.. :)

于 2012-10-01T08:55:31.677 回答
1

我相信大家都同意为什么在 Visual Studio 2010 中没有选择 HTML5 作为网页的默认标准。随着 2010 版本的发布,甚至不支持 HTML5,在 SP1 中只实现了一些功能。

所以问题是为什么选择 XHTML 而不是 HTML 4.01(然后为什么选择不同版本的 XHTML 而不是其他版本)。

首先,这是一篇关于 XHTML 支持的 MSDN 文章的摘录(http://msdn.microsoft.com/en-us/library/exc57y7e(v=vs.100).aspx):

创建符合 XHTML 标准的网页有几个优点:

  • 它保证页面中的元素格式正确。

  • 因为许多浏览器越来越倾向于支持 XHTML,所以创建符合 XHTML 标准的页面有助于确保您的页面在所有浏览器中呈现一致。

  • 使用 XHTML 有助于使页面更容易符合可访问性标准。

  • XHTML 是可扩展的,允许定义新元素。

  • 对于网页由计算机处理而不是由用户阅读的情况,XHTML 页面更容易以编程方式阅读,并且可以使用转换来操作文档。

现在,您如何在不同版本的 XHTML(1.0 Transitional、1.0 Strict 和 1.1)之间进行选择?

XHTML 1.0 Transitional 和 Strict 之间的主要区别在于转向更多语义标记(仅包括结构元素,而不包括样式元素,如 <font> 或 <pre>)。Transitional 仍然支持这些元素和属性(如 <img> 宽度和高度),因为它是为向后兼容而设计的(因此名称为 Transitional),而 Strict 则不支持,并鼓励使用 CSS 而不是标记。

因此,这里的想法是,当您了解需要将样式 (CSS) 与标记 (HTML) 分开时,您可以使用 Strict。

但是为什么不选择 XHTML 1.1(VS 2010 也支持)而不是 XHTML 1.0 Strict?除了一些小的调整(删除 <a> 和 <map> 的“name”属性,删除“lang”属性以支持“xml:lang”和添加 ruby​​ 元素)没有重大特定标记的差异。XHTML 1.1 的主要缺点是它要求您将内容传输为“application/xhtml+xml”而不是“text/html”,并且浏览器对此的支持在早期版本中受到限制。

那么,为什么微软决定使用 XHTML 1.0 Transitional 作为他们的默认 DOCTYPE?

  • 而不是 HTML,因为上面提到的所有优点都来自 MSDN 文章
  • 而不是 XHTML 1.0 Strict 和 1.1,因为您总是希望 IDE 向后兼容,例如,如果他们使用 Strict,如果您打开带有 <font> 和 <pre> 的 XHTML 1.0 Transitional,您会得到很多错误,这是可以避免的。
  • 在内部,这只是一个猜测,XHTML 解析速度稍快(因为 XML 解析通常比 HTML 快一点)。尽管对于用户来说差异并不明显,但对于像 Visual Studio 这样的大型程序来说,每一个小调整都很重要。

我只提到了 Visual Studio,但同样适用于 Expression。

于 2012-10-04T16:54:05.567 回答
0

我认为默认 DOCTYPE 的选择可能是浏览器支持的问题。鉴于 XHTML 1.0 实际上是 HTML 4.01 的 XML 版本,并且在 XML 第一次成为“时尚”时开始了很长的故事(出于其他答案中已经说明的充分理由)。

引用 W3C 网站(旧页面但仍然有用): http ://www.w3.org/MarkUp/2004/xhtml-faq#need

“XHTML 1.0 有三个版本:严格、过渡和框架集。所有这三个版本都刻意保持尽可能接近 HTML 4.01,因为 XML 允许。”

我发现以下帖子简单、简短且有趣,其中包含有关使用何种 doctype 的建议:

http://techoctave.com/c7/posts/33-the-truth-about-cross-browser-development-and-3-secrets-to-better-compatibility

希望能帮助到你

马泰奥

于 2012-10-08T08:24:50.297 回答