Jquery 这个边距/填充从哪里来

Jquery 这个边距/填充从哪里来,jquery,slide,slidetoggle,Jquery,Slide,Slidetoggle,例如: 单击“杂项”或“杂项2”时,它们各自的菜单将滑动打开。然而,这并不顺利;在最顶部,有一些奇怪的边距或填充设置动画,使菜单幻灯片动画停止片刻,而未识别的内容设置动画,然后捕捉打开/关闭 似乎找不到原因。非常感谢 jQuery(document).ready(function ($) { jQuery('.menu ul').slideUp(0); jQuery('.menu li.sub').click(function () { var target =

例如:

单击“杂项”或“杂项2”时,它们各自的菜单将滑动打开。然而,这并不顺利;在最顶部,有一些奇怪的边距或填充设置动画,使菜单幻灯片动画停止片刻,而未识别的内容设置动画,然后捕捉打开/关闭

似乎找不到原因。非常感谢

jQuery(document).ready(function ($) {
    jQuery('.menu ul').slideUp(0);

    jQuery('.menu li.sub').click(function () {
        var target = jQuery(this).children('a');
        if(target.hasClass('menu-expanded')){
            target.removeClass('menu-expanded');
        }else{
            jQuery('.menu-item > a').removeClass('menu-expanded');
            target.addClass('menu-expanded');
        }
        jQuery(this).find('ul:first')
                    .slideToggle(2000)
                    .end()
                    .siblings('li')
                    .find('ul')
                    .slideUp(2000);
    });
});

跟踪问题到
ul。子菜单
显示:内联块
显示:块取而代之


从#菜单中删除固定位置…或更改为位置:相对

#menu{
 position:relative;
}

我注意到它有灰色的背景色,就像它的父元素一样,所以它可能与css继承有关,是否尝试为子元素重置css?