68

几天前,我为 Visual Studio 2010 安装了ASP.NET MVC 3 工具更新

刚才我去创建一个新的 ASP.NET MVC 3 应用程序,我看到New ASP.NET MVC 3 Project对话框上有一个新选项:

使用 HTML5 语义标记

与不选择它相比,在新创建的应用程序中选择此复选框有什么变化,除了字面上很明显?
你什么时候绝对不想使用它,只是为了保持与旧浏览器的兼容性?

4

3 回答 3

56

看看_Layout.cshtml。您会注意到 HTML5 标记,例如<header><section>。它还包括modernizr项目的 javascript 插件。

你什么时候绝对不想使用它,只是为了保持与旧浏览器的兼容性?

如果您不想使用 HTML5 特定标签。无论如何,它只是一个生成一堆默认标记的复选框,如果您愿意,您可以随时修改它们。因此,您不会让自己参与任何随后无法撤消的事情。如果您正在开始一个新项目,请继续检查它:-)

于 2011-04-19T18:42:53.313 回答
40

答案在某种程度上取决于您选择的项目模板。(空、Internet 应用程序或 Intranet 应用程序)

如果您选择Empty,该复选框会将以下两行添加到<head>_Layout.cshtml 中的部分。

<meta charset="utf-8" />
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")"
    type="text/javascript"></script>

如果您选择InternetIntranet Application,那么除了上面的两行之外,您将在 _Layout.cshtml 标记中看到 HTML5 语义标记而不是 div,如下所示:

HTML5 Box Checked vs. Not Checked

<header>              <div id="header">
<nav>                 <div id="menucontainer">
<section id="main">   <div id="main">
<footer>              <div id="footer">

我认为没有理由不检查它,但这并不重要。正如 Darin 所提到的,复选框值仅用于确定为您生成的标记。该值未存储在您的项目中。

您可以在 Scott Gu 的博客文章中阅读更多内容:HTML5 改进与 ASP.NET MVC 3 工具更新

于 2011-06-21T20:56:33.600 回答
1

该复选框指示将 Modernizr 包含在您的视图中,我认为与未选中时没有任何不同。

于 2011-04-19T18:43:08.033 回答