Bootstrap 3平滑的手风琴转换

时间:2014-01-01 23:47:41

标签: jquery twitter-bootstrap

我正在使用Bootstrap 3手风琴。一切都很好,除了转换不顺利。这就像跳跃过渡。我怎样才能顺利过渡?

HTML

    <div class="panel" id="<?php echo $id; ?>">
        <div class="panel-title"><?php the_title(); ?></div>
        <div id="collapse-<?php echo $id; ?>" class="panel-collapse collapse" style="overflow:hidden; display: block;">
            <div class="panel-body"><?php the_content(); ?></div>
        </div>
        <a data-toggle="collapse" data-parent="#accordion" href="#collapse-<?php echo $id; ?>" class="collapsed read_more" id="btn-collapse-<?php echo $id; ?>">Read More &raquo;</a>
    </div>

JS

$('.panel-collapse').on('shown.bs.collapse', function () {
    var collapse_id = $( this ).attr("id");
    $(".panel > #btn-"+collapse_id).text("Close");
});

$('.panel-collapse').on('hidden.bs.collapse', function () {
    var collapse_id = $( this ).attr("id");
    $(".panel > #btn-"+collapse_id).text("Read More");
});

我确实关注了official site上的所有内容。

我尝试过:

关于崩溃类的这个tranisiton CSS

.panel .collapsing{
    height: 100px !important;
    -moz-transition : height 5s;
    -webkit-transition : height 5s;
    -o-transition : height 5s;
    transition : height 5s; 
}

3 个答案:

答案 0 :(得分:20)

只是更新过渡应该有效

.collapsing {
    transition: height 0.6s;
}

答案 1 :(得分:4)

跳跃幻灯片效果通常是由模糊的高度计算引起的。尝试在.panel-body上设置一个高度,即使它是100%。

如果这不起作用,请给它一个明确的宽度。

答案 2 :(得分:2)

改为修改最大高度。

如果您将容器设置为max-height:XXpx;作为默认设置,使用CSS过渡将max-height设置为大于默认值的数字,并且大于可能的容器/文本高度,它将像魅力一样工作。