如何使用CSS旋转+翻转元素

时间:2013-06-10 00:39:27

标签: css css3 css-transforms

转换属性可让您旋转或翻转,但如何同时执行这两项操作?假设我想将元素旋转90度并水平翻转?两者都使用相同的属性,因此后者会覆盖前者。为方便起见,这是一个示例小提琴:

http://jsfiddle.net/DtNh6/

transform: rotate(90deg);
transform: scaleX(-1);

4 个答案:

答案 0 :(得分:36)

我摆弄了jsfiddle,这很有效:

$('#photo').css('transform', 'rotate(90deg) scaleX(-1)');

要将其与您的问题联系起来,生成的CSS看起来像

transform: rotate(90deg) scaleX(-1);

答案 1 :(得分:11)

属性可以用空格分隔,就像这样。

transform: rotate(90deg) scaleX(-1);

答案 2 :(得分:6)

为后代提供更完整的答案:

.rotate2{ /*leaning left <- */
    -webkit-transform:rotate(270deg);
    -moz-transform:rotate(270deg);
    -o-transform:rotate(270deg);
    -ms-transform:rotate(270deg);
    transform:rotate(270deg);
}
.rotate4{ /*upside down*/
    -webkit-transform:rotate(180deg);
    -moz-transform:rotate(180deg);
    -o-transform:rotate(180deg);
    -ms-transform:rotate(180deg);
    transform:rotate(180deg);
}
.rotate6{ /*leaning right -> */
    -webkit-transform:rotate(90deg);
    -moz-transform:rotate(90deg);
    -o-transform:rotate(90deg);
    -ms-transform:rotate(90deg);
    transform:rotate(90deg);
}
.rotate8{ /*vertical flip*/ /*upside-down mirror*/
    -moz-transform: scale(1, -1);
    -webkit-transform: scale(1, -1);
    -o-transform: scale(1, -1);
    -ms-transform: scale(1, -1);
    transform: scale(1, -1);
}
.rotate10{ /*vertical flip*/ /*upside-down*/
    -moz-transform: rotate(90deg) scale(1, -1);
    -webkit-transform: rotate(90deg) scale(1, -1);
    -o-transform: rotate(90deg) scale(1, -1);
    -ms-transform: rotate(90deg) scale(1, -1);
    transform: rotate(90deg) scale(1, -1);
}
.rotate12{ /*horizontal flip*/ /*left-right mirror*/
    -moz-transform: scale(-1, 1);
    -webkit-transform: scale(-1, 1);
    -o-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1);
}
.rotate14{ /*horizontal flip*/ /*left-right mirror*/
    -moz-transform: rotate(90deg) scale(-1, 1);
    -webkit-transform: rotate(90deg) scale(-1, 1);
    -o-transform: rotate(90deg) scale(-1, 1);
    -ms-transform: rotate(90deg) scale(-1, 1);
    transform: rotate(90deg) scale(-1, 1);
}

答案 3 :(得分:0)

看看这个:

element {
        -moz-transform: scaleX(-1);
        -o-transform: scaleX(-1);
        -webkit-transform: scaleX(-1);
        transform: scaleX(-1);
        filter: FlipH;
        -ms-filter: "FlipH";
}

有关更多信息,请访问以下链接:https://css-tricks.com/snippets/css/flip-an-image/