文件>新MVC 3项目中的新"使用HTML5语义标记"选项

Ser*_*eit 68 html5 visual-studio-2010 visual-studio tooling asp.net-mvc-3

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

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

使用HTML5语义标记

选择此复选框会在新创建的应用程序中进行哪些更改而不是选择它,除了字面上显而易见的?
什么时候不想使用它,只是为了保持与旧浏览器的兼容性?

Dar*_*rov 56

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

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

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


Jam*_*ruk 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>
Run Code Online (Sandbox Code Playgroud)

如果您选择InternetIntranet应用程序,那么除了上面的两行之外,您将在_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">
Run Code Online (Sandbox Code Playgroud)

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

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