Oben auf vielen Seiten in unserer Web-Anwendung haben wir Fehlermeldungen und Benachrichtigungen, "Speichern" und andere Tasten, und dann unsere h1-Tag mit dem Titel des Inhalts. Wenn es möglich ist, eine Web-Anwendung zugänglich zu machen, ist es immer akzeptabel, Inhalte über dem Top-Level-Struktur-Tag zu haben, so wie wir es hier tun?Web-Zugänglichkeit und h1-h6 Überschriften - muss der gesamte Inhalt unter diesen Tags sein?
Antwort
Ja (Sie können Sachen über sie setzen). Das H bedeutet einfach Überschrift. Es ist eine Frage dessen, was die Überschrift betrifft, denke ich.
Mein einziger Vorbehalt ist, H2 sollte nicht wirklich über H1 sein, und H3 sollte nicht über H2 sein. Aber ich denke nicht, dass es eine tatsächliche Regel ist. Websites haben Menüs, Warnungen, Benachrichtigungen. Es ist akzeptabel, sie über den Rest Ihres Inhalts zu stellen. Ich sehe nicht, wie sich dies auf die Barrierefreiheit auswirken würde, solange Ihre Inhalte logisch geordnet sind. Sehen Sie sich die Seite CSS deaktiviert an. Sieht es logisch aus? Das ist der wichtigste Teil der Barrierefreiheit.
Obwohl einige Leute diese extra Meile gehen und das Menü als letztes Element im Markup verwenden und CSS verwenden, um es wieder an die Spitze zu bringen. Persönlich finde ich diese Lösung kontraproduktiv. Das Menü ist immer noch wichtig, es gehört am Anfang der Seite.
Ja, bedenken Sie, dass der Benutzer in dieser Reihenfolge die Informationen erhält. Also, wenn Sie gerade eine Operation gemacht haben, klingt es wie eine gute Idee, eine Nachricht im Zusammenhang damit als die erste Sache zu bekommen. Wenn es sich um eine Benachrichtigung handelt, die auf einer Seite erscheint, die nichts mit dem zu tun hat, was Sie tun, würde ich das nicht weiter oben erwähnen, da es vielleicht etwas seltsam ist. Sie können auch einen Textbrowser verwenden, der keine Stile verwendet. Er sollte wie ein Dokument mit entsprechenden Überschriften aussehen.
Als Bildschirmleser Benutzer mag ich nicht Inhalte über der Hauptüberschrift. Normalerweise navigiere ich nach Überschriften, um die Fehlermeldung zu verpassen. Eine bessere Lösung besteht darin, eine Überschrift h1 über der Fehlermeldung auszugeben, dann lassen Sie den Rest Ihrer Überschriften so, dass Sie zwei h1-Überschriften erhalten.
Überschrift-Tags werden verwendet, um die Hierarchie des Inhalts darunter anzuzeigen. Sie sollten nur ein h1 -Tag haben und es sollte der erste Inhalt sein, der auf Ihrer Seite erscheint (dies ist normalerweise der Name der Seite). Außerdem sollten Sie die Überschriften nicht überspringen, wenn Sie verschiedene Inhaltsstufen durchsuchen.
In Ihrem Fall können Sie weiterhin CSS verwenden, um Elemente über dem h1-Tag zu positionieren, solange es in der richtigen Reihenfolge im HTML-Code ist.
Ich gehe davon aus, dass die Elemente über der Überschrift von JavaScript verwendet werden. In diesem Fall ist es vorzuziehen, dass sie von JavaScript erstellt werden und nicht in der Quelle der Seite enthalten sind.
Um zu Ihrer ursprünglichen Frage zurückzukehren, ist es wahrscheinlich am besten, dass sie sich am Fuß der Seite befinden. Wenn sie jedoch mit dem CSS "display: none" ausgeblendet werden, oder "Sichtbarkeit: versteckt" Eigenschaften dann werden sie nicht von den meisten (vielleicht alle?) Screenreadern oder von vielen anderen unterstützenden Technologien gesehen und sollten daher kein Problem sein. Ich habe eine ziemlich detaillierte explanation of why accessibility technology ignores such elements geschrieben.
Natürlich, wenn jemand CSS deaktiviert, werden die Dinge ziemlich unordentlich aussehen. Wenn auf der Seite Inhalte vorhanden sind, die auch dann verwendet werden können, wenn CSS und/oder JavaScript deaktiviert sind, werden die Elemente am unteren Rand der Seite zumindest weniger überladen.
- 1. Korrekte Position für Überschriften-Tags
- 2. WWW :: Mechanize und "HTTP :: Message Inhalt muss Bytes bei ... sein"
- 3. RMarkdown: Tabbed und Untitbled Überschriften
- 4. Muss der Hauptaktivitätsname .MainActivity sein?
- 5. FEHLER: muss Mitglied der Rolle sein "" PostgreSQL
- 6. Abrufen der HTML-Tags unter einem Mauszeiger
- 7. allow_url_open muss auf sein
- 8. Muss SharedPreferences Name eindeutig sein?
- 9. Abrufen eines einzelnen Tags unter allen Tags
- 10. Was muss der E2511-Typparameter 'T' sein?
- 11. Adjazenzmatrix muss symmetrisch sein
- 12. Muss MongoCollection.forEach threadsicher sein?
- 13. Warum muss der Löschoperator statisch sein?
- 14. Warum muss conexpr statisch sein?
- 15. Verbindung muss gültig sein und Fehler öffnen
- 16. Verschachtelte Nummerierung von Überschriften und Listen
- 17. Zugriff tr und sein Inhalt in einer Tabelle mit jquery
- 18. CKEditor - ändere Inhalt und umgebende HTML-Tags
- 19. Font-Größe Initial CSS Wert für HTML Überschriften-Tags
- 20. Muss das Enum-Feld serialisierbar sein?
- 21. Der modeless JDialog muss über dem übergeordneten Element sichtbar sein
- 22. Bootstrap Sidebar und Inhalt unter Navbar
- 23. Ich muss diesen Wert Schleife?
- 24. Ausdruck muss änderbar sein Lvalue
- 25. Suchen und Ersetzen von Tags und seinen Inhalt in PHP
- 26. Der Inhalt des Elementtypen „Eigenschaft“ muss
- 27. Muss ich die gesamte Modellklasse in der Hibernate-Konfigurationsdatei registrieren?
- 28. muss die gesamte Zeile mit Ausnahme der übereinstimmenden Zeichenfolgen
- 29. Laravel Der Response-Inhalt muss eine Zeichenfolge oder ein Objekt sein, das __toString(), "object" implementiert
- 30. graphQL - Typ muss Ausgabetyp sein