2011-10-27 22 views
5

meglio mostrato con un violino: http://jsfiddle.net/Jnttm/centraggio sottomenu orizzontale sotto genitore con css

Come posso ottenere il sottomenu per centrare sotto il menu-item genitore? Molti trucchi di centraggio che ho trovato non si applicano perché l'elemento figlio è più largo del genitore.

Questo è possibile con CSS puro o devo ricorrere a javascript?
Se JS è richiesto qualcuno ha a disposizione un codice JQuery per farlo?

risposta

6

Può essere è necessario definire un default width al submenu in questo modo:

.sub-menu { 
    display: none; 
    position: absolute; 
    top: 20px; 
    left: 0; 
    white-space: nowrap; 
    text-align:center; 
    left:50%; 
    margin-left:-150px; 
    width:300px; 
} 
.active .sub-menu { 
    display:block; 
} 

Scegli questa http://jsfiddle.net/sandeep/Jnttm/1/

+1

la persona che mi ha un danno downvote per favore spiegami dove ho sbagliato – sandeep

+0

Non sai chi ha downvoted, ma questo è esattamente quello che ho chiesto. Non funzionerebbe se ci fosse uno sfondo nel sottomenu dal momento che è più ampio del contenuto, ma nel mio caso funziona. (Ora che l'ho implementato, però, non sembra proprio corretto con il numero di sotto-elementi, ma non era questa la domanda: p) – Davy8

0

Questo centrerà sotto menu: ul > ul.sub-menu { position: absolute; left: 50%; transform: translateX(-50%) }

Problemi correlati