Matthias Scharwies: SELF-Wiki: zugängliches Dropdown-Menü

Beitrag lesen

Guten Morgen!

Stimmt absolut und ich freue mich schon auf Montag, wenn Du Gunnars Beispiel erklärst.

Hmm, ich habe mehr Fragen als Antworten ;-)

Hier ist der erste Schritt:

(weiter oben findet sich die CSS-Variante, in der ich mit Pseudoelementen Pfeile hinzugefügt habe.

Im folgenden Tutorial werde ich diese Pfeile als Buttons dynamisch erzeugen:

function dropdownExtension () {
	const submenus = document.querySelectorAll('nav li > ul');
	console.log(submenus)
    submenus.forEach(function (submenu) {
      submenu.classList.add('geändert');
	  let button = document.createElement('button');
	  button.setAttribute('aria-expanded','false')
	  let span   = document.createElement('span');
      let myText = document.createTextNode('Untermenü aufklappen');
      span.appendChild(myText);
	  span.classList.add('visually-hidden');
	  button.appendChild(span);
      submenu.before(button);
    });
}

Ist dieser Code so ok? Kann der gekürzt werden?

Mein weiterer Plan

Ich würde die li ul mit JS-Click so einblenden, indem ich ihnen eine Klasse gebe oder wegnehm.

Ohne JS wird mit :hover ja

nav ul ul { 
  visibility: hidden;  
  height: 0;
  z-index: 1000; 
}

Würdet ihr eine Klasse .visible einführen? Oder es ganz anders machen?

Im nächsten Schritt müsste man die Klasse visible entfernen, sobald Maus, Focus, oder Klick woanders ist.

Bitte gebt Euer Feedback!

Herzliche Grüße

Matthias Scharwies

--
Eigentlich hatte ich heute viel vor - jetzt habe ich morgen viel vor!
0 37

CSS Navbar ok oder gehts übersichtlicher?

JJ
  • css
  • programmiertechnik
  1. 0
    Matthias Scharwies
  2. 0
    Gunnar Bittersmann
    • inclusive design
    1. 0
      JJ
      1. 0
        Gunnar Bittersmann
        1. 0
          JJ
          1. 0
            Gunnar Bittersmann
            • css
            • inclusive design
            1. 0
              JJ
              • css
              • danke
              • inclusive design
              1. 0
                Matthias Scharwies
            2. 0
              Matthias Scharwies
              1. 0
                Matthias Scharwies
                1. 0
                  Gunnar Bittersmann
                  • aria
                  1. 0
                    Matthias Scharwies
                    1. 0
                      Gunnar Bittersmann
                      • html
              2. 0
                Gunnar Bittersmann
                • aria
                • html
                1. 0
                  Matthias Scharwies
                2. 0
                  Gunnar Bittersmann
                  1. 0
                    Matthias Scharwies
              3. 0
                Gunnar Bittersmann
                • html
            3. 0
              JJ
              1. 0
                Matthias Scharwies
                1. 0
                  JJ
                  1. 0
                    Matthias Scharwies
                    1. 0
                      JJ
                      1. 0
                        Auge
                        • css
                        • inclusive design
                        • meinung
              2. 0
                JürgenB
      2. 0

        SELF-Wiki: zugängliches Dropdown-Menü

        Matthias Scharwies
        • html
        • inclusive design
        1. 0
          JürgenB
        2. 0
          JJ
          • danke
          • html
          • inclusive design
          1. 0
            Matthias Scharwies
            1. 0
              Gunnar Bittersmann
              • javascript
              1. 0
                Matthias Scharwies
                1. 0
                  Matthias Scharwies
                  1. 0
                    Matthias Scharwies
                    • css
                    • javascript
                    1. 1
                      JürgenB
                    2. 1
                      Der Martin
                      1. 0
                        Der Martin
                        • menschelei