几天前,我为 Visual Studio 2010 安装了ASP.NET MVC 3 工具更新。
刚才我去创建一个新的 ASP.NET MVC 3 应用程序,我看到New ASP.NET MVC 3 Project
对话框上有一个新选项:
使用 HTML5 语义标记
与不选择它相比,在新创建的应用程序中选择此复选框有什么变化,除了字面上很明显?
你什么时候绝对不想使用它,只是为了保持与旧浏览器的兼容性?
几天前,我为 Visual Studio 2010 安装了ASP.NET MVC 3 工具更新。
刚才我去创建一个新的 ASP.NET MVC 3 应用程序,我看到New ASP.NET MVC 3 Project
对话框上有一个新选项:
使用 HTML5 语义标记
与不选择它相比,在新创建的应用程序中选择此复选框有什么变化,除了字面上很明显?
你什么时候绝对不想使用它,只是为了保持与旧浏览器的兼容性?
看看_Layout.cshtml
。您会注意到 HTML5 标记,例如<header>
和<section>
。它还包括modernizr
项目的 javascript 插件。
你什么时候绝对不想使用它,只是为了保持与旧浏览器的兼容性?
如果您不想使用 HTML5 特定标签。无论如何,它只是一个生成一堆默认标记的复选框,如果您愿意,您可以随时修改它们。因此,您不会让自己参与任何随后无法撤消的事情。如果您正在开始一个新项目,请继续检查它:-)
答案在某种程度上取决于您选择的项目模板。(空、Internet 应用程序或 Intranet 应用程序)
如果您选择Empty,该复选框会将以下两行添加到<head>
_Layout.cshtml 中的部分。
<meta charset="utf-8" />
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")"
type="text/javascript"></script>
如果您选择Internet或Intranet 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 工具更新
该复选框指示将 Modernizr 包含在您的视图中,我认为与未选中时没有任何不同。