Gunther: HTML5 Outline - Untitled Section

Hallo werte Selfgemeinde!

Ich stehe vor folgenden Fragen auf die ich, trotz des ausgiebigen Studiums zahlreicher Seiten zum Thema, bis jetzt keine "abschließende" Antworten gefunden habe. Deshalb interessieren mich eure Meinungen/ Ansichten dazu.

Als erstes würde mich mal interessieren, ob es in der Praxis eigentlich überhaupt schon irgendwelche "Gelegenheiten" (z.B. Suchmaschinen), bzw. Programme (z.B. Screenreader) gibt, die die Outline in irgendeiner Art & Weise nutzen?

Als nächstes wüßte ich gerne, wie es sich mit den "Untitled Sections" verhält. Denn wenn es aktuell, oder zukünftig eine entsprechende Nutzung der Outline gibt (siehe vorheriger Absatz), dann stelle ich mir eine "Untitled Section" ja als eher "wenig hilfreich" vor, auch wenn diese gem. Spec ausdrücklich "erlaubt" sind. Einer der häufigsten Fälle für deren Auftreten dürften wohl die Nav-Elemente sein.

Nun könnte man ja bspw. auf die Idee kommen, einem Nav-Element eine Überschrift zu verpassen:

  
<nav>  
    <h2 class="invisible-section-heading">Haupt-Navigation</h2>  
    <ul>  
        <li>...</li>  
        ...  
    </ul>  
</nav>  

und im CSS:

  
.invisible-section-heading {display: none;}  

Somit hätte man keine "Untitled Section" mehr. Die Frage ist halt, ob das "sinnvoll/ von Vorteil" ist, oder ob es Gründe gibt, die definitiv dagegen sprechen?

Gruß Gunther

  1. Lieber Gunther,

    .invisible-section-heading {display: none;}

    warum die Klasse? Warum nicht den Selektor anpassen?

    nav > h2 {display: none;}

    Somit hätte man keine "Untitled Section" mehr. Die Frage ist halt, ob das "sinnvoll/ von Vorteil" ist, oder ob es Gründe gibt, die definitiv dagegen sprechen?

    Ich mag es, wenn nach dem Deaktivieren des Stylesheets der Inhalt noch immer in einer vernünftigen Form nutzbar vorliegt. Dazu zählt eine Überschrift, die mir die Nachfolgende Liste als Navigation ankündigt. Ob das anhand des <nav>-Elementes hinfällig ist, vermag ich nicht schlüssig zu widerlegen. Jedenfalls ist das default-Stylesheet meines Browsers nicht dazu ausgelegt, dass eine in <nav> gekleidete Linkliste sofort und unmissverständlich als "die Navigation" erkennbar ist.

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Lieber Felix!

      .invisible-section-heading {display: none;}

      warum die Klasse? Warum nicht den Selektor anpassen?

      nav > h2 {display: none;}

      Warum? ;-)
      Wenn man dann ein H2 Element in einem NAV hat, welches angezeigt werden soll, oder andere Section-Überschriften in anderen Elementen, die ebenfalls nicht angezeigt werden sollen, muss man nur weitere Regeln erstellen.

      Somit hätte man keine "Untitled Section" mehr. Die Frage ist halt, ob das "sinnvoll/ von Vorteil" ist, oder ob es Gründe gibt, die definitiv dagegen sprechen?

      Ich mag es, wenn nach dem Deaktivieren des Stylesheets der Inhalt noch immer in einer vernünftigen Form nutzbar vorliegt. Dazu zählt eine Überschrift, die mir die Nachfolgende Liste als Navigation ankündigt. Ob das anhand des <nav>-Elementes hinfällig ist, vermag ich nicht schlüssig zu widerlegen. Jedenfalls ist das default-Stylesheet meines Browsers nicht dazu ausgelegt, dass eine in <nav> gekleidete Linkliste sofort und unmissverständlich als "die Navigation" erkennbar ist.

      Also würdest du es auch so machen und siehst keine Gründe, die dagegensprechen würden?
      Das ist ja schonmal gut zu wissen - danke!

      Gruß Gunther

      1. @@Gunther:

        nuqneH

        warum die Klasse? Warum nicht den Selektor anpassen?

        Warum?

        Um keine darstellungsbezogenen Klassen im Markup zu haben.

        Wenn man dann ein H2 Element in einem NAV hat, welches angezeigt werden soll, oder andere Section-Überschriften in anderen Elementen, die ebenfalls nicht angezeigt werden sollen, muss man nur weitere Regeln erstellen.

        nav- und section-Elemente sind gute Kandidaten, IDs zu tragen. (Um sie gezielt anspringen zu können.)

        In einer Regel kann es eine Aufzählung von Selektoren geben.

        #hauptnavigation h2, #kapitel11 h2 { line-height: 0; visibility: hidden }

        Warum nicht { display: none }? Die Überschriften dürften für Blinde eine wertvolle Orientierungshilfe sein; sollten also von einem Screenreader vorgelesen werden.

        Qapla'

        --
        „Perfektion ist nicht dann erreicht, wenn es nichts mehr hinzuzufügen gibt, sondern wenn man nichts mehr weglassen kann.“ (Antoine de Saint-Exupéry)
        1. @@Gunnar:

          nuqneH

          warum die Klasse? Warum nicht den Selektor anpassen?

          Warum?

          Um keine darstellungsbezogenen Klassen im Markup zu haben.

          Aha! Und die "stören" warum?
          Und ist das nicht letztlich eine Frage der Definition? Denn CSS dient doch rein der Darstellung. Ist dann nicht sowieso jede Klasse "darstellungsbezogen"?

          Wenn man dann ein H2 Element in einem NAV hat, welches angezeigt werden soll, oder andere Section-Überschriften in anderen Elementen, die ebenfalls nicht angezeigt werden sollen, muss man nur weitere Regeln erstellen.

          nav- und section-Elemente sind gute Kandidaten, IDs zu tragen. (Um sie gezielt anspringen zu können.)

          Es gibt da aber auch einen gegenteiligen Trend.

          Warum nicht { display: none }? Die Überschriften dürften für Blinde eine wertvolle Orientierungshilfe sein; sollten also von einem Screenreader vorgelesen werden.

          Also meinst du, man sollte sie nur aus dem "Blickfeld" verbannen?
          Ich dachte eigentlich bisher, dass sich Screenreader an anderen Dingen "orientieren", wie bspw. an WAI-ARIA Attributen. Allerdings scheint die Entwicklung bei Screenreadern recht langsam voranzuschreiten. Habe gerade neulich von einem Blinden erfahren, dass HTML5 und seine "Features" von noch so gut wie keiner Software unterstützt/ verstanden werden.

          BTW: Was ist eigentlich aus den guten alten "Skip Links" geworden?

          Gruß Gunther

          1. @@Gunther:

            nuqneH

            Um keine darstellungsbezogenen Klassen im Markup zu haben.
            Aha! Und die "stören" warum?
            […] Denn CSS dient doch rein der Darstellung.

            Und HTML dient doch rein gerade nicht der Darstellung.

            Ist dann nicht sowieso jede Klasse "darstellungsbezogen"?

            Nein. Eine Klasse wie "error-message" ist nicht darstellungsbezogen. Sie beschreibt nicht, wie eine Fehlermeldung darsgestellt wird, sondern nur, dass es eine Fehlermeldung ist.

            nav- und section-Elemente sind gute Kandidaten, IDs zu tragen.
            Es gibt da aber auch einen gegenteiligen Trend.

            Gegen gegen.

            Und meine Meinung zu OOCSS hab ich auch kundgetan (Auf der Seite nach 'Gunnar' suchen.)

            Qapla'

            --
            „Perfektion ist nicht dann erreicht, wenn es nichts mehr hinzuzufügen gibt, sondern wenn man nichts mehr weglassen kann.“ (Antoine de Saint-Exupéry)
            1. @@Gunnar:

              nuqneH

              Und meine Meinung zu OOCSS hab ich auch kundgetan (Auf der Seite nach 'Gunnar' suchen.)

              Ja, ich bin durchaus sehr geneigt mich deiner Philosophie anzuschließen.
              Scheinbar "spaltet" sich die Autorengemeinde da im Wesentlichen in zwei idiologische Lager. ;-)

              Aber gerade auch unter dem Aspekt des "Responsive Designs" scheint mir "deine" Ideologie die Richtigere zu sein.

              Und obwohl ich mich mal etwas optimistisch ungefähr in der Mitte zwischen Anfänger und Profi einsortieren würde, habe ich damit, wie man "ordentliches" CSS schreibt immer noch die meisten Schwierigkeiten. Liegt aber vlt. auch zu einem Großteil an meiner Art zu entwickeln. Bei mir "reift" ein Projekt so nach und nach beim Erstellen, will sagen ich habe vorher kein fick, äh fix & fertiges Design und keine fertige Vorstellung vom endgültigen (funktionierenden) Markup, welches dann nur noch entsprechend niedergeschrieben werden müsste.

              Und wenn dann des Öfteren noch Veränderungen im Markup auftreten, dann sind da Klassen einfach sehr "verlockend", weil bei entsprechenden Descendant Selektoren schreibst du auch deine Styles wieder um.

              Aber ich sollte mir halt trotzdem mal langsam angewöhnen, mich an eine Linie zu halten. ;-)

              Eventuell hilft mir die Verwendung von Sass ja zumindest ein bisschen dabei, "ordentlicheres" CSS (und HTML) zu schreiben ...?

              Gruß Gunther

              1. @@Gunther:

                nuqneH

                Eventuell hilft mir die Verwendung von Sass ja zumindest ein bisschen dabei, "ordentlicheres" CSS (und HTML) zu schreiben ...?

                Ja.

                Qapla'

                --
                „Perfektion ist nicht dann erreicht, wenn es nichts mehr hinzuzufügen gibt, sondern wenn man nichts mehr weglassen kann.“ (Antoine de Saint-Exupéry)
          2. [latex]Mae  govannen![/latex]

            nav- und section-Elemente sind gute Kandidaten, IDs zu tragen. (Um sie gezielt anspringen zu können.)

            Es gibt da aber auch einen gegenteiligen Trend.

            Man muß nicht jedem dummen Hipster-Trend folgen.

            Ich liebe es geradezu, auf einen (langen) Text zu verweisen mit dem Hinweis „dann mußt du noch ca. 63% runterscrollen, da steht dann das, auf das ich mich beziehe“… NOT.

            Wer Ids ausschliesslich/hauptsächlich als Mittel zum Stylen ansieht, hat etwas Grundlegendes nicht verstanden. Ids gehören genauso zu einer sinnvollen Auszeichnung wie Absätze im Text.

            Stur lächeln und winken, Männer!
            Kai

            --
            --
            The Borg we are, give up your ship,
            our phasers strong your shields will rip.
            We'll assimilate you,
            your technology, too,
            and you cannot escape from our grip.
            SelfHTML-Forum-Stylesheet