it-swarm.com.de

<nav> oder <menu> (HTML5)

W3Schools.com und ich bin mir ziemlich sicher, dass ich mich erinnere, als ich auf W3C.org festgestellt habe, dass <menu> sollte für Symbolleistenmenüs und zum Auflisten von Formularsteuerungsbefehlen verwendet werden.

Welches sollte ich für mein Hauptmenü verwenden? Nav oder Menu? Ist das wichtig?

100
anon271334

nav wird für Gruppen interner Links (a Elemente) verwendet. Im Allgemeinen bedeutet dies, dass die Links zu separaten Seiten führen oder den Inhalt bei einer AJAX Seite ändern sollten. Erwarten Sie eine Art von Inhaltsänderung, wenn Sie auf ein nav -Element klicken.

menu wird für Gruppen von Steuerelementen verwendet (a, input, button). Im Allgemeinen bedeutet dies, dass die Eingaben eine Funktion innerhalb der Seite ausführen sollten. Erwarten Sie eine Art Javascript-Interaktion, wenn Sie auf ein menu -Element klicken.

nav: das Navigation für die Site.

menu: das Menü für eine Webanwendung.

160
zzzzBov

Hier ist ein HTML5Doctor-Beitrag zu nav mit einem Abschnitt darüber, wie es sich von menu unterscheidet (im Grunde genommen in tatsächlichen Apps). Sieht so aus, als ob Sie nav wollen.

10
Su'

Der beste Ort, um diese Antwort zu erhalten, ist der HTML 5-Standard, den sie selbst verwenden.

Menü ist definiert in HTML 5.1 2nd Edition .

"... steht für eine Gruppe von Befehlen."


Nav ist definiert in HTML 5 .

Es ist "... ein Abschnitt einer Seite, der auf andere Seiten oder Teile der Seite verweist: ein Abschnitt mit Navigationslinks."

Es gibt Hinweise für die Navigation, die ich nicht aufgenommen habe, aber für wichtig halte, aber ich denke, es ist am besten, wenn Sie die Definition selbst anhand der Standards ermitteln.

Die Definitionen, die in diesem Beitrag als Antwort gekennzeichnet sind, sind nahezu korrekt, enthalten jedoch irrelevante Aussagen, die die Antwort selbst falsch machen.

1
kevin

Mit dem <menu> wird normalerweise für Kontextmenüs verwendet.

MDN enthält eine gute Dokumentation: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/men

1
Jack

<nav> ist ein Abschnitt (wie <section> oder <article>) so wird es in Ihrer HTML-Dokument-Gliederung angezeigt. Aus diesem Grund würde ich <menu> 99% der Zeit. Mir, <nav> ist eine Mischung zwischen <section> und <menu>, mit der zusätzlichen Einschränkung, dass <nav> sollte speziell für die Navigation verwendet werden, während <menu> kann für alles verwendet werden, was als Menü bezeichnet werden kann (einschließlich einer Navigationsleiste). Daher entsprechen die meisten Navigationsleisten, obwohl es sich um Navigationsleisten handelt, nicht den strengen Anforderungen von <nav>, und <menu> ist angemessener.

Ich habe in meiner Karriere als Webentwickler noch nie eine Situation erlebt, in der ich wollte, dass meine Navigationsleiste Teil des Dokumententwurfs ist.

0
Nick Manning