Neue Option "Semantisches HTML5-Markup verwenden" unter Datei> Neues MVC 3-Projekt


68

Vor einigen Tagen habe ich das ASP.NET MVC 3 Tools Update für Visual Studio 2010 installiert .

Gerade habe ich eine neue ASP.NET MVC 3-Anwendung erstellt und sehe, dass es eine neue Option im New ASP.NET MVC 3 ProjectDialogfeld gibt:

Verwenden Sie das semantische HTML5-Markup

Was ändert das Aktivieren dieses Kontrollkästchens in der neu erstellten App im Vergleich zum Nicht-Aktivieren, außer dem buchstäblich offensichtlichen?
Wann möchten Sie es definitiv nicht verwenden, nur um die Kompatibilität mit alten Browsern zu gewährleisten?

Antworten:


56

Schau dir das an _Layout.cshtml. Sie werden HTML5-Tags wie <header>und bemerken <section>. Es enthält auch das modernizrJavascript-Plugin für das Projekt.

Wann möchten Sie es definitiv nicht verwenden, nur um die Kompatibilität mit alten Browsern zu gewährleisten?

Wenn Sie keine HTML5-spezifischen Tags verwenden möchten. Wie auch immer, es ist nur ein Kontrollkästchen, das eine Reihe von Standard-Markups generiert, die Sie jederzeit ändern können, wenn Sie möchten. Sie beschäftigen sich also nicht mit etwas, das später nicht mehr rückgängig gemacht werden kann. Wenn Sie ein neues Projekt starten, überprüfen Sie es :-)


40

Die Antwort hängt etwas davon ab, welche Projektvorlage Sie auswählen. (Leer, Internetanwendung oder Intranetanwendung)

Wenn Sie Leer auswählen , fügt das Kontrollkästchen dem <head>Abschnitt in Ihrer _Layout.cshtml die folgenden zwei Zeilen hinzu.

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

Wenn Sie Internet oder Intranet- Anwendung auswählen , werden zusätzlich zu den beiden obigen Zeilen in Ihrem unten gezeigten _Layout.cshtml-Markup semantische HTML5-Markup-Tags anstelle von divs angezeigt:

HTML5 Box Checked vs. Not Checked

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

Ich sehe keinen Grund, es nicht zu überprüfen, aber es spielt keine Rolle. Wie von Darin erwähnt, dient der Kontrollkästchenwert nur dazu, zu bestimmen, welches Markup für Sie generiert wird. Der Wert wird nicht in Ihrem Projekt gespeichert.

Weitere Informationen finden Sie in Scott Gu's Blog-Beitrag: HTML5-Verbesserungen mit dem ASP.NET MVC 3 Tools Update


1

Das Kontrollkästchen schreibt die Einbeziehung von Modernizr in Ihre Ansichten vor. Ich glaube nicht, dass es etwas anderes gibt, als wenn es nicht aktiviert ist.


2
Es ändert auch das Standard-Markup von Dingen wie <div id = 'header'> in <header>
Russ Clarke
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.