/* 首先确定需要过渡的元素的初始状态 */
.demo {
height: 0; /* 初始高度为0 */
overflow: hidden; /* 隐藏溢出内容 */
}
/* 定义过渡效果 */
.demo {
transition: height 0.5s ease-out; /* 过渡时间、缓动函数 */
}
/* 定义触发过渡的状态 */
.demo.active {
height: 100px; /* 目标高度 */
}
上述代码中,大家首先定义了需要过渡的元素的初始状态,将其高度设置为0并隐藏溢出内容。接下来,大家定义了过渡效果,使用CSS过渡属性transition来对元素的height属性进行过渡,过渡时间为0.5s,缓动函数为ease-out。最后,大家定义了触发过渡的状态,将元素的高度设置为目标高度100px。
要实现从下往上的过渡效果,大家可以在HTML中给这个元素添加一个初始状态的类名,例如:class=”demo”。在特定的事件(例如点击按钮)触发时,使用JavaScript动态给这个元素添加一个.active类名,例如:document.querySelector(‘.demo’).classList.add(‘active’)
这样,当触发事件后,元素的高度会平滑地从0过渡到100px,产生一个从下往上的过渡效果。