2011-09-15 14 views
7

Sto provando a visualizzare un elenco non ordinato in senso orizzontale. In ogni elemento della lista, ho un tag di ancoraggio con un'immagine, che mi piacerebbe mostrare allineato verticalmente nella voce dell'elenco. Ecco il mioAllinea verticalmente il contenuto negli elementi dell'elenco di blocchi in linea

HTML:

<ul> 
    <li> 
     <a href="#"> 
      <img src="1.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li> 
    <li> 
     <a href="#"> 
      <img src="2.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li> 
    <li> 
     <a href="#"> 
      <img src="3.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li> 
</ul> 

CSS:

ul 
{ 
    margin: 0; 
    padding: 0; 
    list-style: none; 
    height: 93px; 
} 

ul li 
{ 
    display: inline-block; 
    width: 110px; 
    height: 93px; 
    text-align: center; 
    vertical-align: middle; 
} 

Che cosa sto facendo male qui?

risposta

13

http://jsfiddle.net/zgxHB/1/

Prova utilizzando display: table-cell; anziché display: inline-block;

+0

Hi. Sono curioso del tuo approccio rispetto a quello proposto da @Kyle Sevenoaks ('float: left'.) Qualche raccomandazione quale è meglio? Entrambi sembrano ottenere lo stesso effetto visivo, ma mi stavo solo chiedendo. TIA. –

+0

@SalvatoreIovene, la cella della tabella consente l'allineamento verticale e orizzontale. http://jsfiddle.net/zgxHB/20/, una vista della soluzione float. – Joe

+0

Grazie a @JoeTuskan. Quindi se non ti interessa l'allineamento verticale, entrambi i modi sono intercambiabili? –

6

Prova a flottare a sinistra. Questo li visualizza in una linea orizzontale e mantenere il loro stato di blocco

1

display: inline-block; tratta l'elemento come se fosse livello in linea, il che significa che qualsiasi spazio bianco nel tuo markup viene visualizzato quando viene eseguito il rendering della pagina.

TRY:

<ul><li> 
     <a href="#"> 
      <img src="1.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li><li> 
     <a href="#"> 
      <img src="2.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li><li> 
     <a href="#"> 
      <img src="3.jpg" alt="" height="50" width="50" /> 
     </a> 
</li></ul> 

O:

<ul><!-- 
    --><li> 
     <a href="#"> 
      <img src="1.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li><!-- 
    --><li> 
     <a href="#"> 
      <img src="2.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li><!-- 
    --><li> 
     <a href="#"> 
      <img src="3.jpg" alt="" height="50" width="50" /> 
     </a> 
    </li><!-- 
--></ul> 
Problemi correlati