Fix Bootstrap Rembourrage Sur Des Colonnes Imbriquées

Bootstrap 3, une 15px à gauche et à droite de rembourrage sur les colonnes.

C'est me causer des ennuis parce que ma mise en page a beaucoup de colonnes imbriquées:

<div class="col-md-6"></div>
<div class="col-md-6"></div>
<div class="col-md-12">
    <div class="col-md-6">
        <div class="col-md-12"></div>
        <div class="col-md-12"></div>
    </div>
    <div class="col-md-6"></div>
</div>

Voir Tripoter.

Je n'ai pas besoin d'enlever le rembourrage parce que j'ai besoin de la séparation entre les éléments.

Le résultat que je suis après, visuellement, c'est ceci: http://jsfiddle.net/Aeup8/8/

Ma première approche a été de définir:

[class^='col-'] {
    padding:0;
}
[class^='col-'] + [class^='col-'] {
    padding-left: 15px;
}

Cependant, ce ne sera pas de fixer des colonnes qui s'enroulent sur une deuxième ligne.

Voir Tripoter

Ma deuxième approche a été à l'aide de JavaScript:

(function($) {
var $els = $('[class^="col-"');
//console.log($els);
var cols = {};
$els.each(function(i, col) {
var classes = $(col).attr('class').split(' ');
classes.forEach(function(str) {
var match = str.match(/col-(\w+)-(\d+)/);
if ( match ) {
//console.log($els.eq(i));
cols[match[1]] = cols[match[1]] || {};
var current = cols[match[1]];
if ( match[2] == 12 ) {
current.ids = [];
current.sum = 0;
$els.eq(i).css({ padding: 0 });
return
}
current.ids = current.ids || [];
current.sum = current.sum || 0;
current.sum += ( +match[2] );
current.ids.push(i);
if (current.sum == 12) {
//console.log(current);
current.ids.forEach(function(id) {
$els.eq(id).css({ 'padding': 0, 'padding-right': '15px' });
if (id == i) $els.eq(id).css({ 'padding': 0, 'padding-left': '15px' });
});
current.ids = [];
current.sum = 0;
}
}
});
});
})(jQuery);

Voir Tripoter

Mais il a des problèmes:

  • Il n'a pas de parcourir le DOM dans l'ordre souhaité, afin de ne pas faire imbriquée ceux le bien.
  • Je ne veux pas même de corriger cela car il semble que c'est une très mauvaise solution (ce serait le cas à chaque fois la taille de la fenêtre de modification)

Que dois-je faire?