2016-06-28 11 views
6

Ich brauche Bootstrap 12 Spaltenraster verwenden, um eine ansprechende Form basierend auf der Größe des Elternteils zu erhalten.Verwenden Sie Eltern-Div-Größe für bootstrap reaktionsfähiges Grid-System

Zum Beispiel muss der Inhalt unabhängig von der Größe des Bildschirms die Breite von div A sehen und das responsive Design des Bootstraps auf dieser Breite basieren.

Mein Ziel ist es, mein Responsive Design auf die Größe eines modalen Fensters (in dhtmlx) zu basieren. Wenn der Benutzer das modale Fenster in der Größe ändert, sollte die Zeile den Regeln folgen (z. B. col-xs-12, col-sm-6 usw., aber basierend auf der Größe des modalen Fensters, nicht des Bildschirms).

This fiddle show a modal window with some bootstrap form inside. Ich brauche das Formular, um auf die Größe des modalen Formulars reagieren, nicht die Bildschirmgröße.

+1

Haben Sie versucht "Container-Fluid" -Klasse? Das ist 100% von dem, was es in sich hat ... –

+0

Ich machte [eine andere Geige] (https://jsfiddle.net/davidgourde/68ep7rpv/), um Ihnen zu zeigen, dass das auch nicht funktioniert. Sie können sehen, dass wenn Sie das modale Fenster vergrößern, Sie immer noch nur eine Spalte haben, aber wenn Sie die ganze Seite vergrößern, wird sie in zwei Spalten aufgeteilt, auch wenn Sie das modale Fenster nicht vergrößern. Das 'col - * - *' basiert immer noch nicht auf dem modalen Fenster. Das ist ein Problem. –

+2

Es ist noch nicht in CSS möglich, Sie können es in JavaScript tun (überprüfen Sie die Breite des Fensters bei der Größenanpassung und wenden Sie verschiedene Klassen auf verschiedene Größen an, dann formatieren Sie es in CSS). Sie können auch an http://stackoverflow.com/questions/12251750/can-media-quiries-resize-based-on-a-div-element-inst-of-the-screen denken. – makshh

Antwort

2

Wie @makshh im Kommentar erwähnt, scheint es nicht möglich, dies jetzt zu tun. Der einzige Weg, den ich gefunden habe, ist von another stack overflow question von @tsdexter:

$(document).ready(function(){ 
    $('.somecontainer').on('resize',function(){ 
    if ($('.somecontainer').width() < 640) { 
     $('.somecontainer').addClass('m'); 
    } else { 
     $('.somecontainer').removeClass('m'); 
    }); 
}); 
Verwandte Themen