2014-06-06 61 views
12

Ho un problema con il layout di griglia di Bootstrap e la sovrapposizione di colonne al suo interno. Non sono sicuro di quale sia il problema, qualsiasi consiglio sarebbe più apprezzato, grazie.Colonne della griglia di bootstrap che si sovrappongono l'una con l'altra

<div class="container">  

    <div class="row"> 
     <div class="col-md-6"> 
      <img src="content/one.png"> 
     </div> 

     <div class="col-md-6"> 
      <div class="row"> 
       <div class="col-md-6"><img src="content/two.png"></div> 
       <div class="col-md-6"><img src="content/three.png"></div> 
      </div> 
      <div class="row"> 
       <div class="col-md-6"><img src="content/four.png"></div> 
       <div class="col-md-6"><img src="content/five.png"></div> 
      </div> 
     </div> 

     <div class="col-md-9"> 
      <div class="row"> 
       <div class="col-md-3"><img src="content/six.png"></div> 
       <div class="col-md-9"><img src="content/seven.png"></div> 
      </div> 
      <div class="row"> 
       <div class="col-md-6"><img src="content/eight.png"></div> 
       <div class="col-md-6"><img src="content/nine.png"></div> 
      </div> 
     </div> 
     <div class="col-md-3"> 
      <img src="content/ten.png"> 
     </div> 
    </div> 

</div> 

Schermata della griglia - http://i.stack.imgur.com/a3YBr.jpg

+0

La sintassi della griglia sembra corretta, sei sicuro che non ci siano stili aggiuntivi che potrebbero causare problemi? –

+1

grazie a @Maciej, nessuno stile aggiuntivo (l'unico a cui si fa riferimento è bootstrap.min.css) – kingprawn123

risposta

7

la sintassi griglia non è corretto: il vostro primo div riga ha col-md-6, col-MD-6, col-md-9 e col-MD- 3 come bambini. sistema di rete di bootstrap ha 12 colonne, non 24.

magari provare qualcosa di simile (avvolto col-md-9 e col-md-3 in un nuovo div fila):

<div class="container"> 

    <div class="row"> 
     <div class="col-md-6"> 
      <img src="content/one.png"> 
     </div> 

     <div class="col-md-6"> 
      <div class="row"> 
       <div class="col-md-6"><img src="content/two.png"></div> 
       <div class="col-md-6"><img src="content/three.png"></div> 
      </div> 
      <div class="row"> 
       <div class="col-md-6"><img src="content/four.png"></div> 
       <div class="col-md-6"><img src="content/five.png"></div> 
      </div> 
     </div> 
    </div> 

    <div class="row"> 
     <div class="col-md-9"> 
      <div class="row"> 
       <div class="col-md-3"><img src="content/six.png"></div> 
       <div class="col-md-9"><img src="content/seven.png"></div> 
      </div> 
      <div class="row"> 
       <div class="col-md-6"><img src="content/eight.png"></div> 
       <div class="col-md-6"><img src="content/nine.png"></div> 
      </div> 
     </div> 
     <div class="col-md-3"> 
      <img src="content/ten.png"> 
     </div> 
    </div> 

</div> 
+0

Grazie a @Getz, ho allineato il codice a quanto sopra e mi sono assicurato che ognuna delle righe aggiungesse fino a 12. Le immagini sembrano essere nel posto giusto, ora non si sovrappongono l'un l'altro ma le immagini non riempiono i div così ora ci sono spazi vuoti! Qualche idea? – kingprawn123

+0

Mmh, sembra difficile se si desidera mantenere il rapporto delle immagini (Forse controllare quella domanda: http: // StackOverflow.com/domande/1891857/how-do-you-stretch-an-image-to-fill-a-div-mentre-keeping-the-immagini-aspect-ratto). Altrimenti, puoi correggere l'altezza e la larghezza dell'immagine al 100% in CSS. Se non riesci a farcela, puoi fare una nuova domanda su stackOverflow;) – Getz

+0

Grazie ancora a @Getz, è come se la img non si adattasse alla dimensione della colonna, mi chiedo se c'è un modo per limitare la dimensione fisica di una colonna? – kingprawn123

3

ho usato la griglia la sintassi su un bootply chiaro, ha rimosso le immagini e sembra funzionare correttamente. Non hai fatto jsfiddle o bootply, quindi non è possibile aiutarti ulteriormente senza di esso. Ecco cosa la griglia sembra solo con il testo:

Bootply example

Prova ad aggiungere img class-rispondente a tutte le immagini all'interno di colonne per impedire loro di traboccante colonne in cui si trovano

+0

Grazie @Maciej Gurban, lo installerò su bootply o jsfiddle a breve, posso vedere come renderebbe il processo di assistenza più efficiente ed efficiente! Proverò una lezione img-reattiva proprio ora. Grazie ancora :) – kingprawn123

0

Se stai cercando di. realizzare una griglia di 16x16, i tuoi larghezza delle colonne nidificate non sono giuste:

Inizia cercando in questa sezione:

<div class="col-md-9"> 
     <div class="row"> 
      <div class="col-md-3"><img src="content/six.png"></div> 
      <div class="col-md-9"><img src="content/seven.png"></div> 
     </div> 

Stai annidando una colonna 1/4 (3/12) in una colonna 3/4 (9/12). Per capire la larghezza finale della colonna, moltiplicale e ottieni 3/16. Vuoi davvero una colonna 1/4 (4/16). Per risolvere questo problema, è necessario dividere questa sezione (3/4) in tre parti, invece di quarti (4/12 = 1/3 e 8/12 = 2/3):

<div class="col-md-9"> 
     <div class="row"> 
      <div class="col-md-4"><img src="content/six.png"></div> 
      <div class="col-md-8"><img src="content/seven.png"></div> 
     </div> 

Per rendere la questione più ovvio, aggiungi un colore di sfondo alla cella contenente seven.png. Vedresti che il colore riempie lo spazio vuoto in modo che la cella sia effettivamente lì. L'immagine è troppo stretta per renderla evidente.

La stessa correzione è necessaria per la metà inferiore di questa sezione:

 <div class="row"> 
      <div class="col-md-6"><img src="content/eight.png"></div> 
      <div class="col-md-6"><img src="content/nine.png"></div> 
     </div> 
    </div> 

Ora si sta prendendo una colonna 3/4 e la divisione in in mezzo in modo (moltiplicando ancora una volta) che si sta creando una colonna 3/8 (6/16) a sinistra dove vuoi 1/2 (8/16th) e una 3/8 (6/16) colonna a destra dove vuoi 1/4 (4/16ths) e un altro. Anche in questo caso, la correzione è quello di dividere la bilancia in tre parti:

 <div class="row"> 
      <div class="col-md-8"><img src="content/eight.png"></div> 
      <div class="col-md-4"><img src="content/nine.png"></div> 
     </div> 
    </div> 

E ancora se si mette un colore di sfondo dietro nine.png, vedrai che lo fa riempire gli spazi.

Problemi correlati