我使用以下选项在我的一个页面上实现了一个Jquery手风琴
$("#accordion").accordion({ header: "h3", alwaysOpen: false, active: false, autoHeight: false});
这在Firefox和ie7(now that I've upgraded to v1.7 of jquery ui)
中非常出色然而在ie6中,几乎所有手风琴的内容都消失了(我只留下一个<select>
标签显示?!)
如果我按照this answer将AutoHeight选项更改为true,那么它再次没问题,除了我失去了手风琴尺寸很好的好处,其中一些有很多空白区域
是否有人知道修复程序以便我仍然可以使用AutoHeight = false?
答案 0 :(得分:14)
添加.ui-accordion-content {zoom:1;我的CSS修复了我的问题:
<link type="text/css" href="css/dark-hive/jquery-ui-1.7.2.custom.css" rel="stylesheet" />
<style type="text/css">
.ui-accordion-content{ zoom: 1; }
</style>
答案 1 :(得分:6)
面对同样的问题,我找到了一个适用于所有浏览器的解决方案,无需更改autoHeight参数。
只需在您的css中添加一个类:
* html .clearfix { height: 1%; }
然后将其添加到h3之后的内容div中(如下所示:)
<h3>Header</h3>
<div class="clearfix">Whatever</div>
问题实际上是隐藏文本呈现的IE6问题。我已经在包含无序列表和复杂嵌套div等内容上测试了它,一切正常。如果这样做的话,请告诉我!
答案 2 :(得分:1)
我遇到了同样的问题。虽然手风琴在ul方面效果很好,但我发现这篇文章是关于如何在不使用的情况下制作表格。
http://mindrulers.blogspot.com/2008/03/create-table-using-css.html
希望这有帮助。
答案 3 :(得分:1)
该问题似乎与IE6渲染错误有关。这解决了我的问题。
// This is required for IE6.
if (jQuery.browser.msie && jQuery.browser.version.substr(0,1)<7)
jQuery('#accordion *').css('zoom', '1');
答案 4 :(得分:0)
我的解决方法是对IE6使用autoHeight true,对所有其他浏览器使用false。
var autoHeight = false;
if($.browser.msie && parseFloat($.browser.version) <= 7.0) { autoHeight = true; }
$("#accordion").accordion({ autoHeight: autoHeight });