Ho una barra di navigazione orizzontale creata da una lista non ordinata, e ogni elemento della lista ha un sacco di padding per renderlo bello, ma l'unica area che funziona come un collegamento è il testo stesso. Come posso consentire all'utente di fare clic in qualsiasi punto della voce di elenco per attivare il collegamento?Come faccio a rendere l'intera area di una voce di elenco nella mia barra di navigazione, selezionabile come collegamento?
#nav {
background-color: #181818;
margin: 0px;
overflow: hidden;
}
#nav img {
float: left;
padding: 5px 10px;
margin-top: auto;
margin-bottom: auto;
vertical-align: bottom;
}
#nav ul {
list-style-type: none;
margin: 0px;
background-color: #181818;
float: left;
}
#nav li {
display: block;
float: left;
padding: 25px 10px;
}
#nav li:hover {
background-color: #785442;
}
#nav a {
color: white;
font-family: Helvetica, Arial, sans-serif;
text-decoration: none;
}
<div id="nav">
<img src="/images/renderedicon.png" alt="Icon" height="57" width="57" />
<ul>
<li><a href="#">One1</a></li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a></li>
<li><a href="#">Four</a></li>
</ul>
</div>
<div>
<h2>Heading</h2>
</div>
Non tutte le versioni di IE supportano completamente 'inline-blocco-(vedi http://www.quirksmode.org/css /display.html). Dato che 'li' sono già flottati, 'a {display: block}' è probabilmente la scelta migliore. – dhabersack
'display: inline; zoom: 1; 'in un commento condizionale per IE6 e IE7 sostituirà' display: inline-block; 'anche se sì, se le voci di lista sono già flottate,' display: block; 'sarà OK anche – FelipeAls
Che ha funzionato bene un solo reclamo , non sembrava funzionare con il selettore: after. Volevo che il simbolo '>' apparisse dopo il mio testo del link, ma non lo inserissi nel contenuto ... Alla fine ho inserito solo il contenuto. Sarebbe curioso se c'è un modo migliore per farlo. – counterbeing