Php 将任意数量的引导列居中

Php 将任意数量的引导列居中,php,css,twitter-bootstrap,twitter-bootstrap-3,Php,Css,Twitter Bootstrap,Twitter Bootstrap 3,我想将我的引导列居中。我可以这样做: 可乐 第2列 第3列 但是,列的数量是数据驱动的,因此我无法提前知道正确的偏移量。是否有一个拉中心或类似的东西?我已经编写了一个算法来计算适当的偏移量: function boostrap_calc_offset($ind, $nb_total, $nb_per_row) { $offsets = array(); foreach ($nb_per_row as $size => $n) { $offsets[$si

我想将我的引导列居中。我可以这样做:


可乐
第2列
第3列

但是,列的数量是数据驱动的,因此我无法提前知道正确的偏移量。是否有一个
拉中心
或类似的东西?

我已经编写了一个算法来计算适当的偏移量:

function boostrap_calc_offset($ind, $nb_total, $nb_per_row) {
    $offsets = array();
    foreach ($nb_per_row as $size => $n) {
        $offsets[$size] = 0;

        if ($ind % $n == 0) {
            if ($nb_total - $ind - $n > 0)
                $in_this_row = $n;
            else 
                $in_this_row = $nb_total - $ind;

            if ($in_this_row < $n) {
                $o = (12 - (12 / $n) * $in_this_row) / 2;
                $offsets[$size] = $o;
            }
        }
    }

    $offset = '';
    foreach ($offsets as $size => $o) {
        $offset .= ' col-' . $size . '-offset-' . $o;
    }

    return $offset;
}
函数引导计算偏移量($ind,$nb_总计,$nb_每行){
$offset=array();
foreach($nb\u每行$size=>$n){
$offset[$size]=0;
如果($ind%$n==0){
如果($nb_总计-$ind-$n>0)
$in_this_row=$n;
其他的
$in_此行=$nb_总计-$ind;
如果($在本行<$n){
$o=(12-(12/$n)*$in_this_row)/2;
$offset[$size]=$o;
}
}
}
$offset='';
foreach($size=>$o的偏移量){
$offset.='col-'.$size.-offset-'.$o;
}
返回$offset;
}
如何使用它:

$nb_per_row = array('lg' => 6, 'sm' => 3, 'xs' => 2);
$nb = count($data);

$i = 0;
foreach ($data as $datum) {
    $content .= '<div class="col-lg-2 col-sm-4 col-xs-6 ' . boostrap_calc_offset($i, $nb, $nb_per_row) .'">...</div>';
    $i++;
}
$nb_每行=数组('lg'=>6,'sm'=>3,'xs'=>2);
$nb=计数($data);
$i=0;
foreach($数据作为$数据){
$content.='…';
$i++;
}

覆盖使
.col-*
浮动的默认引导样式,使其
显示:内联块,然后应用
文本对齐:居中到父元素

[class^=“col-”],
[类别*=“列-”]{
浮动:无!重要;
显示:内联块;
}
.行{
文本对齐:居中;
背景色:#ddd;
}

可乐
第2列
第2列
第3列

类似的问题:(但也没有动态方面)谢谢,这看起来容易多了。(我删除了偏移量…)
$nb_per_row = array('lg' => 6, 'sm' => 3, 'xs' => 2);
$nb = count($data);

$i = 0;
foreach ($data as $datum) {
    $content .= '<div class="col-lg-2 col-sm-4 col-xs-6 ' . boostrap_calc_offset($i, $nb, $nb_per_row) .'">...</div>';
    $i++;
}