css CSS3关键帧抖动效果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了css CSS3关键帧抖动效果相关的知识,希望对你有一定的参考价值。

<form id="myform">
        <input type="text" name="login" id="login" />
        <input type="password" name="password" id="password" />
        <button type="submit">Submit</button>
    </form>
    
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    <script>
        $(document).ready(function() {
            $("#myform").submit(function(event) {
 
                if (!$('#login').val() || !$('#password').val()) {
                    if (!$("#myform").hasClass("shake")) {
                            $("#myform").addClass("shake");
                    } else {
                        $('#myform').css('animation-name', 'none');
                        $('#myform').css('-moz-animation-name', 'none');
                        $('#myform').css('-webkit-animation-name', 'none');
 
                        setTimeout(function() {
                            $('#myform').css('-webkit-animation-name', 'shake');
                        }, 0);
                    }
 
                    return false;
                }
            });
        });
    </script>
@keyframes shake{ 
    0% { transform: translate(3px, 0); }
    50% { transform: translate(-3px, 0); }
    100% { transform: translate(0, 0); }
}
 
@-moz-keyframes shake{ 
    0% { -moz-transform: translate(3px, 0); }
    50% { -moz-transform: translate(-3px, 0); }
    100% { -moz-transform: translate(0, 0); }
}
 
@-webkit-keyframes shake {
    0% { -webkit-transform: translate(3px, 0); }
    50% { -webkit-transform: translate(-3px, 0); }
    100% { -webkit-transform: translate(0, 0); }
}
 
.shake {
    animation-name: shake; 
    animation-duration: 150ms; 
    animation-iteration-count: 2; 
    animation-timing-function: linear;
 
    -moz-animation-name: shake; 
    -moz-animation-duration: 150ms; 
    -moz-animation-iteration-count: 2; 
    -moz-animation-timing-function: linear;
 
    -webkit-animation-name: shake;
    -webkit-animation-duration: 150ms;
    -webkit-animation-iteration-count: 2;
    -webkit-animation-timing-function: linear;
}

以上是关于css CSS3关键帧抖动效果的主要内容,如果未能解决你的问题,请参考以下文章

Css3之高级-7 Css动画(概述关键帧动画属性)

跨浏览器 CSS3 关键帧动画 Firefox

CSS3之动画

利用CSS3制作淡入淡出动画效果

css 多个关键帧变形如何衔接

CSS3animation动画为啥会出现抖动效果,怎么解决