2013-02-19 14 views
17

enter image description hereWie ein Twitter Bootstrap-modal in zwei Teile teilen

Ich habe die folgende html

<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" 
aria-labelledby="myModalLabel" aria-hidden="true"> 
    <div class="modal-body"> 
     <table> 
      <tbody> 
       <tr> 
        <td> 
         <div class="span2 fileupload fileupload-new pull-left" data-provides="fileupload"> 
          <div class="fileupload-preview thumbnail" style="width: 200px; height: 150px;"></div> 
          <div> <span class="btn btn-file"><span class="fileupload-new">Select image</span> 
           <span 
           class="fileupload-exists">Change</span> 
            <input type="file" /> 
            </span> <a href="#" class="btn fileupload-exists" data-dismiss="fileupload">Remove</a> 

          </div> 
         </div> 
        </td> 
        <td> 
         <div class="progress"> 
          <div class="bar" style="width: 60%;"></div> 
         </div> 
         <button class="btn btn-mini" type="button">Upload</button> 
        </td> 
       </tr> 
      </tbody> 
     </table> 
    </div> 
    <div class="modal-footer"> 
     <button class="btn btn-primary" data-dismiss="modal" aria-hidden="true">Close</button> 
    </div> 

</div> 

Antwort

9

Edit: Dies ist nur eine reine CSS-Lösung, schaut auf die Antworten unten, wenn Sie wollen etwas mehr bootstraptic.


Sie können ein bisschen CSS verwenden, um die modale Körper in zwei Teile zu teilen, so einfach, wie wenn Sie ein Seitenlayout aus zwei Spalten tun.

... 
<div class="modal-body> 
    <div class="first-column"> 
     <!-- Your first column here --> 
    </div> 
    <div class="second-column"> 
     <!-- Your second column here --> 
    </div> 
</div> 
... 

und die CSS

.first-column { 
    width: 40%; 
    float: left; 
} 

.second-column { 
    width: 40%; 
    float: right; 
} 

Es gibt keine Notwendigkeit, die Grid-System innerhalb des modalen der Verwendung, und wahrscheinlich das Ergebnis schlechter sein wird wahrscheinlich, wenn Sie versuchen, es mit Spannweiten zu passen.

+3

Es ist ideal, um das Grid-System zu verwenden. Vor allem, wenn Sie ein 'modal-lg' verwenden. Mehr als wahrscheinlich werden Sie alternative Ansichtsgrößen aufgrund von Mobile, Tablet und etc haben, was der Zweck der * Grid-Komponenten * ist. Das Anwenden einer '.row' Klasse auf den' Modal-Body' wie @interskh ist derzeit die beste Vorgehensweise. Diese Antwort ist korrekt, vernachlässigt jedoch Bootstraps. –

+0

@BrandonClark Total zustimmen, aber deshalb haben ihre Antworten mehr positive Stimmen als meine: P – Pigueiras

+0

Ich möchte nur sicherstellen, dass die Leute auf diese Antworten achten. Ich habe sie fast übersprungen, als ich dieses Problem untersucht habe. –

13

Ich wollte nur hinzufügen, dass ich dies mithilfe von Bootstrap-CSS bereitgestellt habe. Der folgende Code funktionierte für mich:

<div class="modal-body row-fluid"> 
    <div class="span6"> 
    <!-- Your first column here --> 
    </div> 
    <div class="span6"> 
    <!-- Your second column here --> 
    </div> 
</div> 
+1

Sie sollten "road-fluid" zu "modal-body" hinzufügen: Da die Zeile eine Breite von 100% hat, fließt der Inhalt aus dem Body-Container. Erstelle ein neues Zeilen-Fluid-Div im Modal-Body. –

+0

Eine ähnliche Diskussion findet sich unter [this SO thread] (http://stackoverflow.com/questions/11848258/is-it-possible-to-use-rows-and-spans-inside-modals-in-twitter- bootstrap) – superjos

64

Fügen Sie hier einfach eine Antwort hinzu, wenn Sie Bootstrap 3.0 verwenden. In Bootstrap 3.0 wird row-fluid durch row ersetzt und span wird durch col-md (Voll geänderte Protokoll here)

So Eduardo Grajeda des ersetzt Antwort wird

<div class="modal-body row"> 
    <div class="col-md-6"> 
    <!-- Your first column here --> 
    </div> 
    <div class="col-md-6"> 
    <!-- Your second column here --> 
    </div> 
</div> 
+1

Ich wünschte, ich hätte diese Antwort vor einer Stunde gefunden! Dies ist viel klarer - stellen Sie sicher, dass Sie die Zeilenklasse AFTER modal-body people hinzufügen! :) – Todd

+0

Dies ist definitiv die beste Antwort bisher. Sie können '.row-fluid' als Alternative zu' .row' verwenden, wie @Eduardo Grajeda in seiner Antwort erwähnt. –

+0

Beachten Sie, dass die Dokumentation (3.3.5) besagt, dass Sie ** nicht ** die Klasse "container" oder "container-fluid" irgendwo im Modal haben sollten, sonst bricht das Layout ab. – JJJ

Verwandte Themen