HTML i CSS |
Wynik |
Struktura startowa
<ul>
<li><a href="#">Opcja 1</a></li>
<li>
<a href="#">Opcja 2</a>
<ul>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
</ul>
<li><a href="#">Opcja 2</a></li>
</ul>
|
|
etap pierwszy - ukrycie podmenu
<ul>
<li><a href="#">Opcja 1</a></li>
<li>
<a href="#">Opcja 2</a>
<ul>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
</ul>
<li><a href="#">Opcja 2</a></li>
</ul>
<style>
ul > li > ul {display:none}
</style>
|
|
etap drugi - ukrycie kropek i wyłączenie marginesów i dopełnień (padding)
<ul>
<li><a href="#">Opcja 1</a></li>
<li>
<a href="#">Opcja 2</a>
<ul>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
</ul>
<li><a href="#">Opcja 2</a></li>
</ul>
<style>
ul > li > ul {
display:none
}
ul {
list-style:none;
padding:0;
margin:0;
position:relative;
}
</style>
|
|
etap trzeci - ostylowanie menu pierwszego poziomu
<ul>
<li><a href="#">Opcja 1</a></li>
<li>
<a href="#">Opcja 2</a>
<ul>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
</ul>
<li><a href="#">Opcja 2</a></li>
</ul>
<style>
ul > li > ul {
display:none
}
ul {
list-style:none;
padding:0;
margin:0;
border:3px solid grey;
position:relative;
}
ul > li {
background:yellow;
border-bottom:3px solid grey;
margin:0;
padding:0;
}
ul > li:last-child {
border-bottom:none;
}
</style>
|
|
etap czwarty - ostylowanie hiperłączy pierwszego poziomu
<ul>
<li><a href="#">Opcja 1</a></li>
<li>
<a href="#">Opcja 2</a>
<ul>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
</ul>
<li><a href="#">Opcja 2</a></li>
</ul>
<style>
ul > li > ul {
display:none
}
ul {
list-style:none;
padding:0;
margin:0;
border:3px solid grey;
position:relative;
}
ul > li {
background:yellow;
border-bottom:3px solid grey;
margin:0;
padding:0;
}
ul > li:last-child {
border-bottom:none;
}
ul > li > a{
color:grey;
text-decoration:none;
text-transform:uppercase;
font-size:18px;
padding:10px;
display:block;
}
ul > li > a:hover{
color:yellow;
background:grey;
}
</style>
|
|
etap piąty - pokazanie drugiego poziomu menu
<ul>
<li><a href="#">Opcja 1</a></li>
<li>
<a href="#">Opcja 2</a>
<ul>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
</ul>
<li><a href="#">Opcja 2</a></li>
</ul>
<style>
ul > li > ul {
display:none
}
ul {
list-style:none;
padding:0;
margin:0;
border:3px solid grey;
position:relative;
}
ul > li {
background:yellow;
border-bottom:3px solid grey;
margin:0;
padding:0;
}
ul > li:last-child {
border-bottom:none;
}
ul > li > a{
color:grey;
text-decoration:none;
text-transform:uppercase;
font-size:18px;
padding:10px;
display:block;
}
ul > li > a:hover{
color:yellow;
background:grey;
}
ul > li:hover > ul {
display:block;
position:absolute;
left:80px;
bottom:0;
width:200px;
}
</style>
|
|
etap szósty - ostylowanie drugiego poziomu menu
<ul>
<li><a href="#">Opcja 1</a></li>
<li>
<a href="#">Opcja 2</a>
<ul>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
<li><a href="#">Opcja 2.1</a></li>
</ul>
<li><a href="#">Opcja 2</a></li>
</ul>
<style>
ul > li > ul {
display:none
}
ul {
list-style:none;
padding:0;
margin:0;
border:3px solid grey;
position:relative;
}
ul > li {
background:yellow;
border-bottom:3px solid grey;
margin:0;
padding:0;
}
ul > li:last-child {
border-bottom:none;
}
ul > li > a{
color:grey;
text-decoration:none;
text-transform:uppercase;
font-size:18px;
padding:10px;
display:block;
}
ul > li > a:hover{
color:yellow;
background:grey;
}
ul > li:hover > ul {
display:block;
position:absolute;
left:80px;
bottom:0;
width:200px;
}
ul > li:hover > ul > li{
background:grey;
}
ul > li:hover > ul > li > a{
color: yellow;
padding:10px;
display:block;
text-decoration:none;
text-transform:uppercase;
}
ul > li:hover > ul > li > a:hover{
color: grey;
background:yellow;
}
</style>
|
|