2010-11-18 13 views
7

Domanda veloce sugli elementi flottanti rimasti con IE7. Fondamentalmente ho un codice HTML come questoIE7 float left e stacking problem

<div><a href></a></div> 
<div><a href></a></div> 
<div><a href></a></div> 
<div><a href></a></div> 

I div devono essere allineati uno accanto all'altro in linea orizzontalmente.

In questo momento i div sono flottanti a sinistra e le etichette di ancoraggio al loro interno hanno immagini di sfondo, larghezza, altezza e display: blocco.

A partire da ora funziona in tutti i browser eccetto IE6 + 7. In questi due browser tutto è impilato uno sull'altro come una pila verticalmente. C'è un modo rapido per risolvere per IE? Ho solo accesso al file CSS. Non riesco a modificare l'HTML.

+0

Potete pubblicare i vostri CSS? –

+0

Puoi pubblicare un link a una pagina di esempio che mostra questo? – Adrian

+0

Penso che questo sia ciò che l'OP sta descrivendo - http://jsfiddle.net/pauldwaite/Y35qP/1/ –

risposta

7

provare a utilizzare questo:

zoom: 1; // IE hack to trigger hasLayout 
*display: inline; // IE hack to achieve inline-block behavior 
*float: none; 

sarà letto solo da IE, è un hack, ma dal momento che non è possibile accedere al codice HTML, potrebbe funzionare.

3

Assicurati di avere la larghezza del contenitore genitore che avvolge i tuoi div che stai fluttuando verso sinistra. Imposta anche la larghezza di ogni div che è fluttuante a sinistra e dovrebbe funzionare.

<div id='wrap-it'> 
    <div><a href></a></div> 
    <div><a href></a></div> 
    <div><a href></a></div> 
    <div><a href></a></div> 
</div> 
<style> 
    #wrap-it { width: 200px; } 
    #wrap-it div { float: left; width: 50px; } 
</style>