我在Twitter Bootstrap Accordion中使用jQuery Chosen。我已经使用this question的答案解决了手风琴体剪切的 Chosen 下拉列表的问题。这仍然给我留下了另一个问题:手风琴会向下滑动并变高,但它会长得太多,然后又恢复到适当的高度。
这个 jsfiddle演示了这个问题。这是问题的说明:
.
重现问题的代码
为了重现此问题,我使用了以下代码:
<div class="accordion" id="accordion1">
<div class="accordion-group">
<div class="accordion-heading"> <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion1" href="#body1">First group</a>
</div>
<div class="accordion-body collapse" id="body1">
<div class="box-content">
<span>Body content!</span>
<select multiple="multiple" class="chzn-select">
<option>Option A</option><option>Option B</option><option>Option C</option><option>Option D</option><option>Option E</option><option>Option F</option><option>Option G</option>
</select>
</div>
</div>
</div>
</div>
使用此代码激活所选下拉列表:
$(document).ready(function() {
$('.chzn-select').chosen();
});
并使用此 CSS 修复提到的溢出问题以及一些调试帮助:
/* Styles for visualizing the problem: */
body, .box-content { padding: 10px; }
.accordion-body { background-color: #EEE; }
.accordion-heading { background-color: #DDD; }
/* Required to make sure the chosen select can expand outside the box: */
.collapse.in { overflow: visible; }
.
我尝试过的事情:
有几件事我试图解决这个问题:
- 解决溢出问题的不同变体。但是,我注意到无论溢出问题如何都会出现我的问题。
- 使用常规选择。这显然可以解决我的问题,但并不是真正的解决方案。
- 设置
height: 0
和display: none
上选择。没有效果。
.
问题
你怎么能从一开始就防止手风琴长得太高,并立即让它长到正确的尺寸?