不定高元素的高度transition动画实现

分析文档描述

CSS 支持动画的属性中的 height 属性如下:

height :yes, as a length, percentage or calc()

即:当 height 的值是 length,百分比或 calc() 时支持 CSS3 过渡。

所以当元素 height : auto 时,是不支持 CSS3 动画的。

解决办法

一、使用max-height属性代替height实现过渡效果

div{
  max-height: 0;
  transition: max-height .5s;
}
div:hover{
  max-height: 200px;
}

二、使用js获取精确的 height 值

这里不做详细说明,可以看一下大神的demo。

不定高度动态元素height CSS3 transition过渡动画实例页面

原文地址:https://www.cnblogs.com/macq/p/9047766.html

时间: 2024-10-05 21:14:09

不定高元素的高度transition动画实现的相关文章

如何为什么不定高度的元素添加CSS3 transition

但一个元素不设置height时,它的默认值是 auto,浏览器会计算出实际的高度. 但如果想给一个 height:auto 的块级元素的高度添加 CSS3 动画时,该怎么办呢? 从 MDN 的可以查到 CSS 支持动画的属性中的 height 属性如下: height :yes, as a length, percentage or calc(); // 当 height 的值是 length,百分比或 calc() 时支持 CSS3 过渡. 所以当元素 height : auto 时,是不支持

[ jquery 效果 slideDown([speed,[easing],[fn]]) slideUp([speed,[easing],[fn]]) ] 此方法用于滑动显示隐藏的被选元素:动画效果只调整元素的高度,可以使匹配的元素以“滑动”的方式显示出来。在jQuery 1.3中,上下的padding和margin也会被有动画,效果更流畅

此方法用于滑动显示隐藏的被选元素:动画效果只调整元素的高度,可以使匹配的元素以“滑动”的方式显示出来.在jQuery 1.3中,上下的padding和margin也会被有动画,效果更流畅 实例: <!DOCTYPE html><html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my

Android自定义Transition动画

本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 曾经(或者现在)很多人说起Android和iOS都会拿Android的UI设计来开黑, "你看看人家iOS的设计, 再来看看Android的, 差距怎么就这么大呢?", 对于这种说辞, 可以一句话来总结一下"他们还停留在4.X之前的时代". 自从Android5.0推出Material Design设计规范后, Android在设计上早已甩那个万年不变的iOS好几十条街! 以上纯

css3 transition 动画基础

一.transition语法: transition:[<transition-property>||<transition-duration>|| <transition-timing-function>||<transition-delay>|| <transition-property>||<transition-duration>|| <transition-timing-function>||<transi

transition动画初级介绍

Transition:(过渡转变)让瞬间改变到目标值的事情,按照我们规定的过渡方式改变到目标值. 第一点:transition适合用于哪些属性? 适合所有的元素,包括::before和::after伪元素. Ps(::before和::after伪元素是在不改变html结构的情况下,适用于样式改变,所以在js中是对::before和::after进行不了事件绑定的.) var before=document.querySelector("::before");console.log(b

css3 Transition动画执行时有可能会出现闪烁的bug

css3 Transition动画执行时有可能会出现闪烁的bug,一般出现在开始的时候. 解决方法: 1.-webkit-backface-visibility: hidden; 2.-webkit-transform-style: preserve-3d; 需要应用在动画元素上. 第二种方法在低端android上会出现性能问题.所以推荐第一种方法

CSS未知宽高元素水平垂直居中

方法一 思路:显示设置父元素为:table,子元素为:cell-table,这样就可以使用vertical-align: center,实现水平居中优点:父元素(parent)可以动态的改变高度(table元素的特性)缺点:IE8以下不支持 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>未知宽高元素水平垂直居中&l

CSS3 transition动画、transform变换、animation动画

一.CSS3 transition动画 transition可以实现动态效果,实际上是一定时间之内,一组css属性变换到另一组属性的动画展示过程. 属性参数: 1.transition-property 设置过渡的属性,比如:width height background-color2.transition-duration 设置过渡的时间,比如:1s 500ms3.transition-timing-function 设置过渡的运动方式 linear 匀速 ease 开始和结束慢速 ease-

宽高自适应,高度塌陷,伪对象选择符

宽高自适应 网页布局中经常要定义元素的宽和高.但很多时候我们希望元素的大小能够根据窗口或子元素自动调整,这就是pc自适应. 自适应的优点: 元素自适应在网页布局中非常重要,它能够使网页显示更灵活,可以适应在不同设备.不同窗口和不同分辨率下显示. 宽度自适应 元素宽度设置为100%.(块元素宽度默认为100%) 或者不设置宽度(width);(宽度是父元素的宽度) 高度自适应 1)自适应元素高度:height:auto;或者不设置;(是子元素撑开父元素的高度) 2)元素高度自适应窗口高度 设置方法