Alchimie Grafiche
  • Contattaci: +39 328 1323121
Alchimie Grafiche
  • Home
  • Servizi web
    • Ottimizzazione SEO
    • Campagne Adwords
    • Email Marketing
    • Article Marketing
  • Blog
  • Contatti

Creare un menu di navigazione drop-down multilivello

Home| Web Design| Creare un menu di navigazione drop-down multilivello

14
Lug, 2011
By Enrico Rombaldoni
Creare un menu di navigazione drop-down multilivello
  • Web Design
  • Nessun commento

Oggi vi proponiamo un modo semplice per implementare un buon menu di navigazione drop-down. Realizzato da Bloggermint utilizzando del semplice codice html con CSS puro e l’aggiunta di alcuni elementi di CSS 3, come border-radius, box-shadow, text-shadow e linear gradient, questo tipo di menu funziona perfettamente su Firefox, Safari e Chrome.

HTML

Questo è il codice html base utilizzato:

<div id=”nav”>
<ul>
<li><a href=”#”>Home</a></li>
<li><a href=”#”>About Us</a></li>
<li><a href=”#”>Our Portfolio</a></li>
<li><a href=”#”>One Dropdown</a>
<ul>
<li><a href=”#”>Level 2.1</a></li>
<li><a href=”#”>Level 2.2</a></li>
<li><a href=”#”>Level 2.3</a></li>
<li><a href=”#”>Level 2.4</a></li>
<li><a href=”#”>Level 2.5</a></li>
</ul>
</li>
<li><a href=”#”>Three Levels</a>
<ul>
<li><a href=”#”>Level 2.1</a></li>
<li><a href=”#”>Level 2.2</a></li>
<li><a href=”#”>Level 2.3</a>
<ul>
<li><a href=”#”>Level 2.3.1</a></li>
<li><a href=”#”>Level 2.3.2</a></li>
<li><a href=”#”>Level 2.3.3</a></li>
<li><a href=”#”>Level 2.3.4</a></li>
<li><a href=”#”>Level 2.3.5</a></li>
<li><a href=”#”>Level 2.3.6</a></li>
<li><a href=”#”>Level 2.3.7</a></li>
</ul>
</li>
<li><a href=”#”>Level 2.4</a></li>
<li><a href=”#”>Level 2.5</a></li>
</ul>
</li>
<li><a href=”#”>Services</a></li>
<li><a href=”#”>Contact Us</a></li>
</ul>
</div>

CSS

Iniziamo ora a rivestire il nostro scheletro con elementi grafici in CSS

#nav {
float: left;
font: bold 12px Arial, Helvetica, Sans-serif;
border: 1px solid #121314;
border-top: 1px solid #2b2e30;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
overflow: hidden;
}

#nav ul {
margin:0;
padding:0;
list-style:none;
}

#nav ul li {
float:left;
}

#nav ul li a {
float: left;
color:#d4d4d4;
padding: 10px 20px;
text-decoration:none;
background:#3C4042;
background: -webkit-gradient( linear, left bottom, left top, color-stop(0.09, rgb(59,63,65)), color-stop(0.55, rgb(72,76,77)), color-stop(0.78, rgb(75,77,77)) );
background: -moz-linear-gradient( center bottom, rgb(59,63,65) 9%, rgb(72,76,77) 55%, rgb(75,77,77) 78% );
background: -o-linear-gradient( center bottom, rgb(59,63,65) 9%, rgb(72,76,77) 55%, rgb(75,77,77) 78% );
box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset, 0 0 5px rgba(0, 0, 0, 0.1) inset;
border-left: 1px solid rgba(255, 255, 255, 0.05);
border-right: 1px solid rgba(0,0,0,0.2);
text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.6);
}

#nav li ul {
background:#3C4042;
background-image: -webkit-gradient( linear, left bottom, left top, color-stop(0.09, rgb(77,79,79)), color-stop(0.55, rgb(67,70,71)), color-stop(0.78, rgb(69,70,71)) );
background-image: -moz-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
background-image: -o-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
border-radius: 0 0 10px 10px;
-moz-border-radius: 0 0 10px 10px;
-webkit-border-radius: 0 0 10px 10px;
left: -999em;
margin: 35px 0 0;
position: absolute;
width: 160px;
z-index: 9999;
box-shadow: 0 0 15px rgba(0, 0, 0, 0.4) inset;
-moz-box-shadow: 0 0 15px rgba(0, 0, 0, 0.4) inset;
-webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.4) inset;
border: 1px solid rgba(0, 0, 0, 0.5);
}

#nav li ul a {
background: none;
border: 0 none;
margin-right: 0;
width: 120px;
box-shadow: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;
border-bottom: 1px solid transparent;
border-top: 1px solid transparent;
}

Una volta aggiunto il codice, dovreste ottenere un menu di navigazione senza drop-downs e senza effetti di hover. A questo punto basterà inserire altro CSS per creare i drop-down submenus e gli effetti di hover:

#nav ul li a:hover,
#nav ul li:hover > a {
color: #252525;
background:#3C4042;
background: -webkit-gradient( linear, left bottom, left top, color-stop(0.09, rgb(77,79,79)), color-stop(0.55, rgb(67,70,71)), color-stop(0.78, rgb(69,70,71)) );
background: -moz-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
background: -o-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2), 0 -1px #000;
}

#nav li ul a:hover,
#nav ul li li:hover > a {
color: #2c2c2c;
background: #5C9ACD;
background: -webkit-gradient( linear, left bottom, left top, color-stop(0.17, rgb(61,111,177)), color-stop(0.51, rgb(80,136,199)), color-stop(1, rgb(92,154,205)) );
background: -moz-linear-gradient( center bottom, rgb(61,111,177) 17%, rgb(80,136,199) 51%, rgb(92,154,205) 100% );
background: -o-linear-gradient( center bottom, rgb(61,111,177) 17%, rgb(80,136,199) 51%, rgb(92,154,205) 100% );
border-bottom: 1px solid rgba(0,0,0,0.6);
border-top: 1px solid #7BAED9;
text-shadow: 0 1px rgba(255, 255, 255, 0.3);
}

#nav li:hover ul {
left: auto;
}

#nav li li ul {
margin: -1px 0 0 160px;
-webkit-border-radius: 0 10px 10px 10px;
-moz-border-radius: 0 10px 10px 10px;
border-radius: 0 10px 10px 10px;
visibility:hidden;
}

#nav li li:hover ul {
visibility: hidden;
}

Tuttavia, come potete notare, gli angoli del primo e dell’ultimo link del sottomenu non appaiono ancora arrotondati. Per ottenere questo effetto basterà aggiungere un’ulteriore parte di codice CSS:

#nav ul ul li:last-child > a {
-moz-border-radius:0 0 10px 10px;
-webkit-border-radius:0 0 10px 10px;
border-radius:0 0 10px 10px;
}

#nav ul ul ul li:first-child > a {
-moz-border-radius:0 10px 0 0;
-webkit-border-radius:0 10px 0 0;
border-radius:0 10px 0 0;
}

Avrete così realizzato un buon menu di navigazione, semplice, funzionale ed elegante. A questo link potete visionare una live demo. Qui invece avete la possibilità di scaricare tutte le risorse necessarie.

About Enrico Rombaldoni

Lascia un commento Annulla risposta

Web Hosting

Categorie Articoli

  • Apple
  • Applicazioni
  • Arte
  • Biglietti da Visita
  • Brochure
  • Campagne pubblicitarie
  • Cataloghi
  • Colore
  • Comunicazione
  • Contest
  • Corsi
  • Cover
  • Curriculum
  • Domini e Hosting
  • Drupal
  • E-Commerce
  • eBay
  • Ebook
  • Email Marketing
  • Facebook
  • Flyers
  • Fonts
  • Fotografia
  • Freelancers
  • Grafica
  • Grafica Teorica
  • Icone
  • Immagini
  • Infografiche
  • Inviti
  • Joomla
    • Template
  • Keynote
  • Landing Page
  • Locandine
  • Loghi
  • Magento
  • Marketing
  • Mockup
  • Newsletter
  • Opuscoli
  • Packaging
  • Photoshop
  • Powerpoint
  • Presentazioni
  • Prestashop
  • Promozioni
  • Recensioni
  • Senza categoria
  • SEO
  • T-shirt
  • Template
  • Textures
  • Traduzioni
  • Tumblr
  • Twitter
  • Video
  • Wallpaper
  • Web Design
    • JQuery
    • Mobile
    • Risorse
    • Tools
  • Wordpress
    • Javascript
    • Plugin
    • Temi

Archivio Articoli

logo

Ultime dal blog

19 Maggio 2017 | Enrico Rombaldoni Redazione (e non...

La nostra particolarità è la passione. Il testo di un

28 Luglio 2016 | Federico Antonioni Temi WordPress...

La leggenda narra che il termine “grunge” fu utilizzato per

Contatti

  • Alchimie Grafiche
    Via Cà Lupo, 16A
    61043 Cagli, Pesaro
    Italia
  • Telefono: +39 328 1323121
  • info@alchimiegrafiche.com

Social Networks

© 2015 Alchimie Grafiche | Cagli, Pesaro | Tutti i Diritti Riservati | P.IVA 02167200415 | Privacy & Cookies | Contatti
Gestisci Consenso Cookie
Per fornire le migliori esperienze, utilizziamo tecnologie come i cookie per memorizzare e/o accedere alle informazioni del dispositivo. Il consenso a queste tecnologie ci permetterà di elaborare dati come il comportamento di navigazione o ID unici su questo sito. Non acconsentire o ritirare il consenso può influire negativamente su alcune caratteristiche e funzioni.
Funzionale Sempre attivo
L'archiviazione tecnica o l'accesso sono strettamente necessari al fine legittimo di consentire l'uso di un servizio specifico esplicitamente richiesto dall'abbonato o dall'utente, o al solo scopo di effettuare la trasmissione di una comunicazione su una rete di comunicazione elettronica.
Preferenze
L'archiviazione tecnica o l'accesso sono necessari per lo scopo legittimo di memorizzare le preferenze che non sono richieste dall'abbonato o dall'utente.
Statistiche
L'archiviazione tecnica o l'accesso che viene utilizzato esclusivamente per scopi statistici. L'archiviazione tecnica o l'accesso che viene utilizzato esclusivamente per scopi statistici anonimi. Senza un mandato di comparizione, una conformità volontaria da parte del vostro Fornitore di Servizi Internet, o ulteriori registrazioni da parte di terzi, le informazioni memorizzate o recuperate per questo scopo da sole non possono di solito essere utilizzate per l'identificazione.
Marketing
L'archiviazione tecnica o l'accesso sono necessari per creare profili di utenti per inviare pubblicità, o per tracciare l'utente su un sito web o su diversi siti web per scopi di marketing simili.
Gestisci opzioni Gestisci servizi Gestisci fornitori Per saperne di più su questi scopi
Visualizza le preferenze
{title} {title} {title}