Creare Meniu Dublu cu CSS 3
In acest tutorial puteti invata cum sa creati Meniu Dublu cu CSS (orizontal si vertical).
Meniu dublu inseamna ca lista meniului contine inca un Meniu cu alte link-uri (denumit si Sub-Meniu).
In general, Meniurile sunt create folosind tag-urile <ul> (sau <ol>) si <li> tags.
– Presupunand ca deja stiti CSS si HTML, aplicati /adaptati codurile prezentate mai jos, personalizandu-le si cu alte elemente CSS, dupa cum doriti sa creati designul (colturi rotunjite, imagini pt. fundal, etc.).
Meniu Vertical Dublu
Meniul vertical este de obicei adaugat in marginile laterale ale paginii.
Iata un exemplu simplu (mutati cursorul mouse-ului pe el):
- Pagina personala
- + Tutorialle CSS
- + Tutoriale HTML
- Contact
– Codul HTML si CSS de mai jos creaza acest meniu (Proprietatile CSS trebuie adaugate in zona <head>, sau intr-un fisier „.css”):
<style><!–
#menuv {
width:200px;
border:1px solid blue;
background-color:#daedfe;
padding:2px;
}
/* Proprietati pentru primul nivel din meniul vertical */
#menuv li {
margin:1px 0;
background-color:#f0f1fe;
padding:1px;
list-style-type:none;
font-weight:600;
text-align:left;
}
#menuv li a {
display:block;
margin:0;
font-weight:normal;
}
#menuv li a:hover {
background-color:#fefefe;
text-decoration:none;
font-style:oblique;
}
/* Proprietati pentru nivelul doi din meniul vertical */
#menuv li:hover ul {
display:block;
}
#menuv li ul {
display:none;
position:relative;
margin:-1px 0 -2px 0;
padding:1px 0;
}
#menuv li ul li {
margin:2px 0 0 20px;
background-color:#edfeed;
padding:1px 0;
border:1px dotted yellow;
}
–></style>
<ul id=”menuv”>
<li><a href=”/” title=”Pagina personala”>Pagina personala</a></li>
<li> + Tutorialle CSS
<ul>
<li><a href=”http://www.cursCSS.net/curs_css/css3-background-proprietati-noi.html” title=”CSS3 – Background proprietati”>CSS3 – Background proprietati</a></li>
<li><a href=”http://www.cursCSS.net/curs_css/css3-opacity.html” title=”CSS3 opacity”>CSS3 opacity</a></li>
</ul>
</li>
<li> + Tutoriale HTML
<ul>
<li><a href=”http://www.cursCSS.net/html/tutorial-html5.html” title=”Tutorial HTML5″>Tutorial HTML5</a></li>
<li><a href=”http://www.cursCSS.net/html/html5-canvas.html” title=”HTML5 canvas”>HTML5 canvas</a></li>
<li><a href=”http://www.cursCSS.net/html/html5-taguri-noi.html” title=”HTML5 tag-uri noi”>HTML5 tag-uri noi</a></li>
</ul>
</li>
<li><a href=”http://www.cursCSS.net/coment/contact.php” title=”Contact”>Contact</a></li>
</ul>
– „Smecheria” la acest Meniu este acest cod (ceea ce face a doua lista UL vizibila cand mouse-ul e deasupra listei LI parinte):
#menuv li:hover ul {
display:block;
}
• O alta varianta de meniu vertical dublu:
- Pagina personala
- + Tutorialle CSS
- + Tutoriale HTML
- Contact
– Codul CSS si HTML pt. acest meniu:
<style><!–
#menuv {
position:relative;
width:160px;
border:1px solid blue;
background-color:#daedfe;
padding:2px;
}
/* Proprietati pentru primul nivel din meniul vertical */
#menuv li {
margin:1px 0;
background-color:#f0f1fe;
padding:1px;
list-style-type:none;
font-weight:600;
text-align:left;
}
#menuv li a, #menuv li span {
display:block;
margin:0;
font-weight:normal;
}
#menuv li a:hover {
background-color:#fefefe;
text-decoration:none;
font-style:oblique;
}
/* Proprietati pentru nivelul doi din meniul vertical */
#menuv li:hover ul {
display:block;
}
#menuv li ul {
display:none;
position:absolute;
z-index:9998;
width:100%;
left:151px;
margin:-20px auto 0 auto;
background-color:#daedfe;
border:1px dashed blue;
padding:1px;
}
#menuv li ul li {
margin:1px;
background-color:#edfeed;
padding:1px 0 1px 2px;
}
–></style>
<ul id=”menuv”>
<li><a href=”/” title=”Pagina personala”>Pagina personala</a></li>
<li><span> + Tutorialle CSS</span>
<ul>
<li><a href=”http://www.cursCSS.net/curs_css/css3-background-proprietati-noi.html” title=”CSS3 – Background proprietati”>CSS3 – Background proprietati</a></li>
<li><a href=”http://www.cursCSS.net/curs_css/css3-opacity.html” title=”CSS3 opacity”>CSS3 opacity</a></li>
</ul>
</li>
<li><span> + Tutoriale HTML</span>
<ul>
<li><a href=”http://www.cursCSS.net/html/tutorial-html5.html” title=”Tutorial HTML5″>Tutorial HTML5</a></li>
<li><a href=”http://www.cursCSS.net/html/html5-canvas.html” title=”HTML5 canvas”>HTML5 canvas</a></li>
<li><a href=”http://www.cursCSS.net/html/html5-taguri-noi.html” title=”HTML5 tag-uri noi”>HTML5 tag-uri noi</a></li>
</ul>
</li>
<li><a href=”http://www.cursCSS.net/coment/contact.php” title=”Contact”>Contact</a></li>
</ul>
– Sub-meniul (#menuv li ul) trebuie sa aibe urmatoarele proprietati CSS, ca sa-l ascunda si sa nu afecteze celelalte liste cand e descoperit (proprietatea z-index:9998; il face sa fie afisat peste celelalte liste).
display:none;
position:absolute;
z-index:9998;
– In codul CSS al acestui Meniu este important ca selectorul #menu sa aibe definita proprietatea „position” (relative, absolute). Aceasta e necesar ca sa functioneze z-index:9998; (in #menuv li ul) in Internet Explorer.