JSFIDDLE DEMO
HTML-Struktur:
Es gibt viele Möglichkeiten, um eine vertikale Navigation zu erreichen.
Die häufigste ul
und li
zu verwenden wäre:
<div id="lnav_container">
<ul id="lnav">
<li class="lnav_item"><a href="#">Item 1</a></li>
<li class="lnav_item"><a href="#">Item 2</a></li>
<li class="lnav_item"><a href="#">Item 3</a></li>
<li class="lnav_item"><a href="#">Item 4</a></li>
</ul>
</div>
auch sehr häufig innerhalb li
a
Tags zu haben.
Styling:
können Sie durch list-style-type: none;
für die ul
mit den Kugeln loszuwerden.
Sie können sie unterschiedliche Art auf schweben geben, indem :hover
Selektor es interaktiv zu machen.
.lnav_item {
width: 74%;
margin-top: 10px;
}
.lnav_item:first-child {margin-top: 0px;}
.lnav_item.selected {width: 86%;}
.lnav_item a {
display: inline-block;
width: 100%;
line-height: 30px;
padding: 8px 5px 5px 0px;
background-color: yellow;
color: black;
font-weight: bold;
text-decoration: none;
border-radius: 2px 12px 12px 2px;
}
.lnav_item.selected a {
background-color: green;
color: white;
font-size: 18px;
}
.lnav_item:hover a {background-color: orange;}
Um text-decoration: none;
loszuwerden a
Unterstrichen Verwendung zu erhalten und seine Standard Färbung überschreiben, wenn Sie es wünschen.
Javascript (jQuery):
Es wird einfach sein clickListener
, um die Elemente zu binden:
$('.lnav_item a').on('click', function() {
//$(this) item is clicked, do whatever you want
$('.lnav_item').removeClass('selected');
$(this).parent().addClass('selected');
});
EDIT:
Wenn Sie jede der Navigationselemente geben möchten ein anderer Stil, etc., können Sie ihnen verschiedene Arten erreichen:
jsfiddle DEMO
Sie können CSS‘nth-child()
Selektor:
.lnav_item:nth-child(2):hover a{background-color: #252F1D;}
.lnav_item:nth-child(3):hover a{background-color: white;}
Wenn Sie es in jQuery tun, alternativ können Sie die Funktion mit dem Parameter (Index) verwenden und vielleicht eq
verwenden, wenn nötig.
$('.lnav_item > a').each(function(index) {
if(index == 0) {
//give it a different onClick, CSS rule, etc
}
//and so on
});
index
nullbasiert, aber nth-child
beginnt, sich von einem.
Navigationen im Wesentlichen lists..so für 'ul' gehen und' li' –
https://css-tricks.com/snippets/css/a-guide-to-flexbox/ – lifetimes