css - First use BEM. What I doing wrong? -


i try use bem in first time , think don't quite understand it. is assign classes elements, include li , a? grateful receive advice on peace of code:

  <header> <div class="container container-1170">   <div class="row">     <div class="col-md-12">        <nav class="navbar navbar-default header-menu">          <div class="navbar-header header-menu__toggle">           <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">             <span class="sr-only">toggle navigation</span>             <span class="icon-bar"></span>             <span class="icon-bar"></span>             <span class="icon-bar"></span>           </button>           <img src="./img/sprite.png" class="header-menu__logo ico_header-logo" alt="">         </div>         <div id="navbar" class="navbar-collapse collapse">           <ul class="nav navbar-nav navbar-right header-menu__list">             <li class="header-menu__list__item item"><a href="#" class="item__href item__href--active"></a></li>             <li class="dropdown header-menu__list__item item">               <a href="#" class="dropdown-toggle item__href item__href--dropdown" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"></a>               <ul class="dropdown-menu drop-list">                 <li class="drop-list__item"><a href="#"></a>                   <ul class="in-drop-item">                     <li class="in-drop-item__item"><a href="#" class="in-drop-item__item__href"></a></li>                     <li class="in-drop-item__item"><a href="#" class="in-drop-item__item__href"></a></li>                     <li class="in-drop-item__item"><a href="#" class="in-drop-item__item__href"></a></li>                     <li class="in-drop-item__item"><a href="#" class="in-drop-item__item__href"></a></li>                     <li class="in-drop-item__item"><a href="#" class="in-drop-item__item__href"></a></li>                     <li class="in-drop-item__item"><a href="#" class="in-drop-item__item__href"></a></li>                   </ul>                 </li>                 <li class="drop-list__item"><a href="#"></a></li>                 <li class="drop-list__item"><a href="#"></a></li>                   <li class="drop-list__item"><a href="#"></a></li>               </ul>             </li>             <li class="header-menu__list__item item"><a href="#" class="item__href"></a></li>             <li class="header-menu__list__item item"><a href="#" class="item__href"></a></li>             <li class="header-menu__list__item item"><a href="#" class="item__href"></a></li>             <li class="header-menu__list__item item"><a href="#" class="item__href"></a></li>             <li class="header-menu__list__item item"><a href="#" class="item__href"></a></li>           </ul>         </div><!--/.nav-collapse -->       </nav>     </div>   </div> </div> 

thanks help!

the key concept of bem reusability of code. if can reuse it, should give class. helps avoid nested selectors , make things more modular. recommend not so, if not necessary, if feel elements never apart of structure, can make cascade style rules them, careful, feeling tricky.

also, i've found other mistake - should avoid "elements of elements". here explanation: https://en.bem.info/methodology/faq/#why-does-bem-not-recommend-using-elements-within-elements-block__elem1__elem2


Comments

Popular posts from this blog

java - Jasper subreport showing only one entry from the JSON data source when embedded in the Title band -

mapreduce - Resource manager does not transit to active state from standby -

serialization - Convert Any type in scala to Array[Byte] and back -