Jquery 如何切换()一个以div为中心的元素,它总是从左侧开始,然后跳过

Jquery 如何切换()一个以div为中心的元素,它总是从左侧开始,然后跳过,jquery,html,css,Jquery,Html,Css,我的.toggle有一些问题,因为我有一个容器,里面有一个隐藏的div。我使用了.toggle来显示和隐藏它,但由于某些原因,div总是开始显示在左角,当它完全显示时,它的位置本身就居中 这是一个 HTML: JavaScript: .toggleslow正在使用jquery切换效果,该效果与您的小提琴中的预期效果完全相同。如果要使用不同的过渡,需要查看jqueryui效果 下面是一个演示和使用jqueryui.toggle的不同效果列表 .toggle的核心行为不允许使用效果参数,只允许使用

我的.toggle有一些问题,因为我有一个容器,里面有一个隐藏的div。我使用了.toggle来显示和隐藏它,但由于某些原因,div总是开始显示在左角,当它完全显示时,它的位置本身就居中

这是一个

HTML:

JavaScript:

.toggleslow正在使用jquery切换效果,该效果与您的小提琴中的预期效果完全相同。如果要使用不同的过渡,需要查看jqueryui效果

下面是一个演示和使用jqueryui.toggle的不同效果列表


.toggle的核心行为不允许使用效果参数,只允许使用持续时间、可选缓和和回调。

像这样更改html

<a href="#" id="click_me">click me</a>
<div class="contain">
   <div class="content"><div id="drop_down"></div></div>
</div>​

它是样式边距:0自动将div放置到中心。

过渡没有多大关系,它是在完成后从左向右跳过的div。保证金:0自动;对不起,我误解了你的问题。我认为问题在于它是如何转换的,而不是最终的结果。你也可以使用类似于滑动切换、fadeToggle的东西。这两个工作方式相同的是切换。
#drop_down {
    height: 200px;
    width: 200px;
    background-color: #ccc;
    display: none;
    margin: 0 auto;
}

.contain {
    width: 100%;
    text-align;
}
$('#click_me').on('click', function() {
    $('#drop_down').toggle('slow'); 
});​
<a href="#" id="click_me">click me</a>
<div class="contain">
   <div class="content"><div id="drop_down"></div></div>
</div>​
.content{
  margin: 0 auto;width:200px;  
 }