2012-08-01 13 views
6

Ho problemi con i menu di rollover CSS.Hover-list in CSS solo

L'ho visto molto, e ci sono tutorial, ma c'è così tanto codice non necessario, e trovo difficile distinguere tra quale sia il codice necessario, e che è solo un altro CSS.

Mi piacerebbe avere un menu hover su CSS solo perché il sito Web su cui sto lavorando ha molti utenti che hanno intenzionalmente script disabilitati (JavaScript).

Non capisco, in CSS, come si possa far apparire un "sottomenu" sotto la voce Elenco genitore quando l'utente passa sopra la voce dell'elenco genitore. Qualcuno può aiutarmi a capire come funziona in CSS?

seguito è l'immagine di ciò che mi riferisco a:

enter image description here

risposta

12

Di seguito funzionerà, nella sua forma base, ma lo stile per i propri gusti (posizione, bordi, colori , ecc):

<ul> 
    <li>Simple List item 
     <ul> 
      <li>sub menu item 1</li> 
      <li>sub menu item 2</li> 
      <li>sub menu item 3</li> 
     </ul> 
    </li> 
</ul> 

Con il CSS:

ul li { 
    position: relative; 
} 

ul ul { 
    position: absolute; 
    top: 1em; 
    left: 0; 
    display: none; 
} 

ul > li:hover ul { 
    display: block; 
} 

JS Fiddle demo.

+0

Grazie. In realtà mostra e nasconde quando si libra. Tuttavia, indipendentemente dalla parte superiore o sinistra impostata, o dalla posizione impostata, la voce di menu "sub" viene visualizzata solo nell'angolo superiore sinistro della pagina (e il menu effettivo è sulla destra della pagina e verso il basso un po ') - – Arrow

+0

Sto vedendo le cose o qualche codice nella tua risposta è scomparso? – Arrow

+0

Grazie @ MiljanPuzović e grazie a David Thomas - funziona esattamente come speravo. Così felice di capire finalmente come è fatto! :-) – Arrow