javascript - 从显示 :none to display:block? 向下滑动动画

标签 javascript jquery html css css-transitions

有没有一种方法可以使用 CSS 将 display:none 设置为 display:block 动画,以便隐藏的 div 向下滑动而不是突然出现,或者我应该采用不同的方式吗?

$(document).ready(function() {
    $('#box').click(function() {
        $(this).find(".hidden").toggleClass('open');
    });
});
#box {
    height:auto;
    background:#000;
    color:#fff;
    cursor:pointer;
}
.hidden {
    height:200px;
    display:none;
}
    .hidden.open {
        display:block;
    }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="box">
    Initial Content
    <div class="hidden">
        This is hidden content
    </div>
</div>

还有一个JSFiddle

最佳答案

是的,有一个方法: http://jsfiddle.net/6C42Q/12/

通过使用 CSS3 过渡和操纵高度,而不是显示属性:

.hidden {
    height: 0px;
    -webkit-transition: height 0.5s linear;
       -moz-transition: height 0.5s linear;
        -ms-transition: height 0.5s linear;
         -o-transition: height 0.5s linear;
            transition: height 0.5s linear;
}

.hidden.open {
     height: 200px;
     -webkit-transition: height 0.5s linear;
        -moz-transition: height 0.5s linear;
         -ms-transition: height 0.5s linear;
          -o-transition: height 0.5s linear;
             transition: height 0.5s linear;
}

更多信息:Slide down div on click Pure CSS?

关于javascript - 从显示 :none to display:block? 向下滑动动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24314687/

相关文章:

html - 如何在一个中使用多个关键帧动画?

javascript - 将 ember-resource 与 couchdb 一起使用 - 如何保存我的文档?

jquery - 我们可以使用跨域中的 Jquery $.ajax() 调用通过 https 访问 WCF 服务吗?

javascript - 如何使用javascript验证单选按钮

jquery - 使用 Google Charts 在堆积柱形图中显示 Y 轴

javascript - 在 jquery validate 的 submitHandler 中访问表单输入值

html - 使用 RTL 方向时切换侧边栏

html - 我什么时候应该在 react 中使用 'className' 而不是 'class',反之亦然?

javascript - 默认聚焦 Ext.field.InputMask

javascript - 在 Android 浏览器中重定向到 document.ready 上的另一个页面