jquery slideToggle 抖动闪烁的问题

最近在用slideToggle做div展开和收缩时发现会有抖动的情况,非常影响用户体验在网上搜的也没找到方案。

网上的方案

<!DOCTYPE html>

改成

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

我自己最终的解决方案

因为我要展开收起的div容器里面包含了浮动元素float:left造成的,只要清除浮动就把问题解决了。

//$("#main").slideToggle()  展开收起ID等于main的容器
<div id="main" style="clear:both"> 
    <div style="float:left;background-color:#f1f1f1;height:100px;width:60%">
     这个float:left造成了抖动
    </div>
    //加一个clear:both问题就解决了
    <div style="clear:both"></div>    
 </div>

下载文件

下载文件

作者:奔跑的蜗牛 网址:http://www.itxst.com/detail/nezqerqv.html