美文网首页
css动画--高度过渡

css动画--高度过渡

作者: 怪兽别跑biubiubi | 来源:发表于2018-03-23 15:17 被阅读0次
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>高度过渡</title>
  <style>
    .box1 {
      transition: max-height 0.5s;
      max-height: 0;
      overflow: hidden;
    }
    .box:hover > .box1 {
      max-height: var(--max-height);
    }
  </style>
</head>
<body>
  <div class="box">
    Hover me to see a height transition.
    <div class="box1">
      CSS
      transition: max-height: 0.5s cubic-bezier(...)指定更改为max-height应使用ease-out-quint定时函数。
      overflow: hidden防止隐藏元素的内容溢出其容器。
      max-height: 0指定元素最初没有高度。
      .target:hover > .el指定当父项悬停在上方时,以子项为目标.el并使用--max-height由JavaScript定义的变量。
      JavaScript       
      el.scrollHeight是包含溢出的元素的高度,它将根据元素的内容动态更改。
      el.style.setProperty(...)设置--max-height用于指定max-height目标悬停在其上的元素的,允许它从0平滑过渡到auto。
    </div>
  </div>

  <script>
    var box1 = document.querySelector('.box1');
    var height = box1.scrollHeight;
    box1.style.setProperty('--max-height', height +'px')
  </script>
</body>
</html>

相关文章

  • css动画--高度过渡

  • CSS3动画

    css3动画包括过渡,形变,动画 过渡transition: 指定过渡样式:transition-property...

  • Vue -- 过渡和动画

    单组件过渡和动画 动画方案:css过渡和动画中自动用class;配合css第三方库如 Animate.css;在钩...

  • 08_dayCSS动画

    CSS3新增的功能有:过渡和动画,阴影和圆角 css3过渡动画: css3都有哪些新增的东西 : 过度,动画,阴影...

  • Vue中的动画

    基础CSS过渡和动画 动画:keyframes过渡:transition 列表动画 状态动画 组件和元素切换 1....

  • 有用的Vue第三方库

    Animate.css - CSS动画库 Velocity.js - JS动画库 TweenJS - 状态过渡动画...

  • CSS动画

    transition 过渡动画 设置过渡动画效果的CSS属性名称all 全部leftwidthheightbott...

  • 05.React高级部分(下)

    React中实现CSS过渡动画 React中使用CSS动画效果 修改style.css文件 使用react-tra...

  • 10.React中CSS动画19-04-30

    一.React中实现CSS过渡动画 App.js style.css 一.React中使用CSS动画 style....

  • web前端-CSS3动画

    动画和过渡的异同 相同点过渡和动画都是给元素添加动画的过渡和动画都是CSS3新增的属性过渡和动画都需要满足三要素才...

网友评论

      本文标题:css动画--高度过渡

      本文链接:https://www.haomeiwen.com/subject/lorxcftx.html