首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

纯css实现展开收起动画

展开收起”效果是网页中比较常见的一种交互方式,通常的做法是控制display属性值在none和其它值之间切换,虽说功能可以实现,但是效果略显生硬,所以会有这样的需求——希望元素展开收起能具有平滑的效果...*/ } 但是结果可能并不会是我们所预期的那样;原因是我们将要展开的元素内容是动态的,即高度值不确定,因此,height使用的值是默认的auto,从0px到auto是无法计算的,因此无法形成过渡或动画效果...max-height值,只需要设定为保证比展开内容高度大的值即可,在max-height值比height值大的情况下,元素仍会默认采用自身的高度值,即auto;如此一来,一个高度不定的元素展开收起动画效果就实现了...然而在使用本方法时,需要注意一点:虽然从适用范围上说,max-height值越大可供使用的场景越多,但是如果max-height值太大,在元素收起的时候将会产生延迟的效果,这是因为在收起时,max-height...因此,建议将max-height值设置为足够安全的最小值,这样在收起时即使有略微延迟,也会因为时间很短,难以被用户感知,将不会影响体验。

22.3K31

Android 自定义View之展开收起的Layout

效果 分析 效果图来看,点击事件触发view的展开收起,并在收起状态下保留了第一个子view显示,这个展开收起其实就是view的高度变化,所以只要控制好高度,就能很简单的实现这个效果。...步骤 1.初始化参数 设置方向等 2.根据动画执行进度计算高度 初始化 class ExpandLinearLayout : LinearLayout { //是否展开,默认展开 private...第一个判断可以理解为收起状态的高度,第二个判断可以理解为展开状态的高度。...展开收起逻辑 // 根据是否展开设置高度 if (isOpen) { setMeasuredDimension( widthMeasureSpec, firstChildHeight...展开:第一个子view的高度 + 剩余高度 × 0到1的Float动画值 收起:总高度 - 剩余高度 × 0到1的Float动画值 author:yechaoa 动画 写一个方法控制展开收起,并在展开收起的时候执行动画

1K20

vue3+element plus实现查询条件展开收起功能

vue3+element plus实现查询条件展开收起功能 1 需求来源 如图所示,这样一个查询页面,上面的条件太多,使得下面的列表展示的空间就变得很小了。...所以,需要有一个东西控制,当条件太多时,就展示一个展开/收起按钮,可以控制查询条件的展开收起。...'展开' : '收起' }} ok,代码就是上面的代码,可能少了一些变量,但是思路还是挺清晰的,主要就是通过conditionFold来控制按钮是否展示,conditionInitShowLength来控制收起时显示的默认长度...4 技术小结 当我们使用“展开/收起”按钮时,需要搭配row、col,列数需要是固定的,不然我们不知道“展开/收起”按钮展示及切换的时机。

55510

JS】310- 使用 focusout 事件,解决 iOS 键盘收起不归位问题

关注,学习起来~ 本文原载于 SegmentFault 专栏青檬前端 作者:sheldon 整理编辑:SegmentFault 问题症状: 今天在开发一个移动端的 H5 页面时,遇到了 iOS 上键盘收起时界面无法归位的问题...此时,实际上页面顶部是离开了我们的视口一部分距离的(我们看到界面中消失了一行输入)。 键盘收起时页面无法还原归位 然而当用户输入完成关闭键盘后,键盘虽然收起了,但页面位置却不会还原。...问题分析: 实际上这是由于 iOS 无法在键盘收起时,页面滚出视口的部分没有掉下来导致的。这时用户是可以通过手指将页面拖回来的。 但是毕竟体验不好。...,然后点击键盘的完成收起键盘,效果符合我们的预期。...因为我们在上述两个输入之间切换时,页面会首先触发 电话输入 的 blur事件,接着触发 姓名输入 的 focus 事件。

3.2K10

【javaScript案例】之二级菜单的制作

这次实现的效果图如下: 二级菜单.gif 这个二级菜单实现的效果是: 当点击某一个时,会将已经打开的的内容收回,再展开现在点击的的内容。 要如何实现这个效果呢?...我们可以step by step 首先我们要将整个框架显示出来,即所有展开的样子,因为其显示/不显示是拿overflow:hidden做的。...但是要注意不要所有的都拿一种类型的盒子做,因为那样不方便写js代码,毕竟我们之后的操作是点击绿色的=>使得收起展开白色的,所以我们需要为每一个天数+对应课程的放在一个div父盒子下。...然后为其初始化:设置高度等于span的高度,设置overflow:hidden,如下图,可以结合下面代码 Snipaste_2021-10-25_08-05-59.png 然后开始写js部分:确保点击某一时...span的onclick响应函数中通过parentNode获取其对应的父盒子,使其父盒子的高度变为其scrollHeight的值 然后我们需要在点击span使某盒子展开的时候,将已经展开的盒子收起

58720
领券