【问题标题】:CSS Transitions Rotating imgCSS过渡旋转img
【发布时间】:2011-10-15 16:20:03
【问题描述】:

我需要通过单击将图像旋转到 90 度,然后再次单击按钮后图像旋转到 0 度。我有web site 有这些 jQuery 但我只需要 css 。

【问题讨论】:

    标签: html css transitions image-rotation


    【解决方案1】:

    必须使用transform:rotate() CSS 属性。为此,我编写了一个(简单?)纯 JS 函数。

    JS:

    function rotate(elem, angle){
        //Cross-browser:
        var css = ["-moz-","-webkit-","-ms-","-o-","",""]
                   .join("transform:rotate(" + angle + "deg);")
        elem.style.cssText += css;
    }
    

    例如,小提琴:http://jsfiddle.net/zvuyc/

    <script>
    window.onload = function(){
        var angle = 0;
        document.getElementById("button").onclick = function(){
            angle += 90 % 360;
            rotate(document.getElementById("image"), angle);
        }
    }
    </script>
    <input type="button" id="button" value="Rotate by 90deg">
    <img src="http://simplyeng.com/wp-content/uploads/2008/11/indiana_tux.png" id="image" />
    

    【讨论】:

    • cssText 可以通过这种方式变得很长(并调用 css 解析器)。这是一个设置属性的变体:jsfiddle.net/2tZja
    猜你喜欢
    • 1970-01-01
    • 2021-03-04
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    • 2018-10-25
    • 1970-01-01
    • 2018-12-04
    • 2019-03-02
    相关资源
    最近更新 更多