Reputation: 5578
The transform property lets you rotate or flip, but how can you do both at the same time? Say I want to rotate an element 90 degrees and flip it horizontally? Both are done with the same property, so the latter overwrites the former. Here's an example fiddle for convenience:
transform: rotate(90deg);
transform: scaleX(-1);
Upvotes: 50
Views: 91924
Reputation: 918
Have a look at this:
element {
-moz-transform: scaleX(-1);
-o-transform: scaleX(-1);
-webkit-transform: scaleX(-1);
transform: scaleX(-1);
filter: FlipH;
-ms-filter: "FlipH";
}
for more info here is the link: https://css-tricks.com/snippets/css/flip-an-image/
Upvotes: 0
Reputation: 1645
For future generations, a more complete answer:
.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);
}
Upvotes: 10
Reputation: 1753
I fiddled with jsfiddle, and this worked:
$('#photo').css('transform', 'rotate(90deg) scaleX(-1)');
To relate it to your question, the resulting CSS looks like
transform: rotate(90deg) scaleX(-1);
Upvotes: 83
Reputation: 21130
The properties can be delimited by spaces, like so.
transform: rotate(90deg) scaleX(-1);
Upvotes: 21