2012-10-04 16 views
49

Voglio un div con un'immagine a larghezza fissa a sinistra e un div variabile in larghezza con un colore di sfondo, che dovrebbe estendersi della sua larghezza 100% sul mio dispositivo. Non riesco a fermare il secondo div da traboccare il mio div fisso.Div di larghezza fissa a sinistra, riempire il div di larghezza rimanente a destra

Quando aggiungo overflow: nascosto alla larghezza variabile div salta appena sotto la foto, nella riga successiva.

Come posso risolvere il problema nel modo giusto (vale a dire senza hack o margine sinistro, poiché è necessario rendere il sito più reattivo in seguito con le query multimediali e devo modificare l'immagine con altre immagini di risoluzione per ciascun dispositivo)?

  • principiante web designer cercare di affrontare l'orrore di siti sensibili -

HTML:

<div class="header"></div> 
<div class="header-right"></div> 

CSS:

.header{ 
    float:left; 
    background-image: url('img/header.png'); 
    background-repeat: no-repeat; 
    width: 240px; 
    height: 100px; 
    } 

.header-right{ 
    float:left; 
    overflow:hidden; 
    background-color:#000; 
    width: 100%; 
    height: 100px; 
    } 
+3

+1 per un buon titolo. – QMaster

risposta

55

Provare a rimuovere il float:left e width:100% da .header-right - la destra div quindi si comporta come richiesto.

Vedere this jsfiddle.

+1

Grazie mille! Funziona su iPhone e Android Galaxy S plus! Penso che devo solo stare attento e fare la giusta query sui media min-device-pixel-ratio. Vorrei poter votare, ma sono troppo nuovo. –

+0

Se si volesse invertire la configurazione e avere il div corretto corretto e il div a larghezza variabile a sinistra, sarebbe semplice come cambiare il float: left on .header per essere float: giusto? Ho giocato con questo su http://jsfiddle.net/veW2z/14/ e non riesco a farlo funzionare nel modo in cui lo voglio. –

+0

@PaulGear sì che dovrebbe farlo. mantenere l'ordine dei div lo stesso però. – caitriona

Problemi correlati