如何给visibility: hidden;的元素设置渐变动画?

display:none的可以用animate,fadeIn,fadeOut
如何让visibility: hidden;的也可以有个渐变淡出淡入效果呢?

阅读 7.1k
2 个回答

visibility 实现渐变和dispaly实现渐变,道理其实是一样的。
display:none-->display:block;opacity:0;-->opacity:1;
visibity:hidden;-->visibity:visible;opacity:0;-->opacity:1;

使用css3的动画配合js实现

.div{
            height: 200px;
            width: 200px;
            visibility: hidden;
        }
        @keyframes myfirst
        {
            0% {
                /*visibility: hidden;*/
                background: rgba(255,0,0,0);
            }
            25%{
                background: rgba(50,0,0,.2);
            }
            50%{
                background: rgba(100,0,0,.4);
            }
            75%{
                background: rgba(150,0,0,.8);
            }
            100% {
                visibility: visible;
                background: rgba(255,0,0,1);
            }
        }
        .div{
            animation-name:myfirst;
            animation-duration:4s;
            animation-delay: 2s;
            animation-iteration-count:1;
            animation-fill-mode : forwards;
        }
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题