• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

BEM - selektor potomka dla klas BEMowych

Object Storage Arubacloud
0 głosów
141 wizyt
pytanie zadane 14 grudnia 2019 w HTML i CSS przez michh123 Bywalec (2,790 p.)

Cześć.

Czy stosując metodologię BEM możemy używać selektorów potomka w CSS dla klas? Konkretnie chodzi mi o:

.block__element--modifier .blok {
    /*style CSS*/
}

W dokumentacji nie znalazłem informacji na ten temat, a chcę ostylować nawigację dla urządzeń mobilnych, otwieraną za pomocą przycisku-hamburgera. Po naciśnięciu przycisku zostanie otwarte menu. Wymyśliłem coś takiego (kod dla ułatwienia jest bardzo uproszczony):

<nav class="navigation navigation--opened">
    <ul class="navigation__list">
        <li class="navigation__item">
            <a class="navigation__link" href="#">Link 1</a>
        </li>
        <li class="navigation__item">
            <a class="navigation__link" href="#">Link 2</a>
        </li>
        <li class="navigation__item">
            <a class="navigation__link" href="#">Link 3</a>
        </li>
        <li class="navigation__item">
            <a class="navigation__link" href="#">Link 4</a>
        </li>
    </ul>
    <button type="button" class="hamburger">
        <img src="obrazek.png" alt="Przycisk otwarcia menu" class="hamburger__icon hamburger__icon--opened">
        <img src="obrazek.png" alt="Przycisk zamknięcia menu" class="hamburger__icon hamburger__icon--closed">
    </button>
</nav>

modyfikator navigation--opened jest dodawany przez JS kiedy użytkownik otworzy menu za pomocą przycisku. Wtedy chciałbym wystylizować potrzebne komponenty w CSS (tak, aby menu było widoczne):

.navigation--opened .navigation__list {
    /*style CSS*/
}

.navigation--opened .navigation__item {
    /*style CSS*/
}

.navigation--opened .navigation__link {
    /*style CSS*/
}

/*itd...*/

Czy w BEM poprawne jest ustawianie selektora potomka i w dodatku tak, że przodkiem jest modyfikator, a potomkiem blok lub element, jak wyżej? Czy takie podejście jest / może być zgodnie z metodologią BEM? 

Z góry dziękuję za pomoc!

1 odpowiedź

0 głosów
odpowiedź 21 grudnia 2019 przez pirouetti Mądrala (6,490 p.)
Ta metodologia jest stworzona dla łatwiejszego ogarnięcia kodów.

Jeżeli to tylko dla ciebie, nie ma najmniejszego powodu się zastanawiać czy jest to poprawne czy nie, byle tobie się łatwo było odnaleźć w tych kodach.

Podobne pytania

0 głosów
2 odpowiedzi 250 wizyt
pytanie zadane 27 maja 2019 w HTML i CSS przez Apper97 Obywatel (1,380 p.)
+1 głos
1 odpowiedź 330 wizyt
pytanie zadane 17 listopada 2017 w HTML i CSS przez cyberDEV Użytkownik (780 p.)
+1 głos
1 odpowiedź 189 wizyt
pytanie zadane 14 sierpnia 2021 w HTML i CSS przez kajman_Rrzeczny Użytkownik (960 p.)

92,579 zapytań

141,427 odpowiedzi

319,654 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...