У меня есть следующая разметка, которая используется для создания мегаменю во всплывающем стиле (для каждого столбца есть столбец .column div, хотя в приведенном ниже примере есть только один столбец) ...
<ul id="mainmenu">
<li class="mega">
<h2><a href="/">Menu 1</a></h2>
<div class="submenu col1 leftmenu">
<div class="column">
<ul>
<li><h3>Sub Menu Heading</h3></li>
<li><a class="hilight" href="#">Do Something</a></li>
<li><a class="hilight" href="#">More great stuff</a></li>
<li><a href="#">Another Item</a></li>
</ul>
</div>
</div>
</li>
<li class="mega">
<h2><a href="#">Second Menu</a></h2>
<div class="submenu col3 leftmenu">
blar blar blar
</div>
</li>
// more menus here
</ul>
Поскольку это достаточно глубоко встраивается с довольно многими похожими тегами (<li>
<a>
), мне понадобился довольно ужасный список селекторов для стилизации его в css, например.
#mainmenu li h2 a {}
#mainmenu li.mega .column li h3 a {}
Кто-нибудь может предложить какие-либо улучшения в разметке, чтобы было проще ориентироваться с помощью CSS и jQuery?