Using CSS, how can I apply more than one transform
?
Example: In the following, only the translation is applied, not the rotation.
li:nth-child(2) {
transform: rotate(15deg);
transform: translate(-20px,0px);
}
Using CSS, how can I apply more than one transform
?
Example: In the following, only the translation is applied, not the rotation.
li:nth-child(2) {
transform: rotate(15deg);
transform: translate(-20px,0px);
}
Just start from there that in CSS, if you repeat 2 values or more, always last one gets applied, unless using
!important
tag, but at the same time avoid using!important
as much as you can, so in your case that's the problem, so the second transform override the first one in this case...So how you can do what you want then?...
Don't worry, transform accepts multiple values at the same time... So this code below will work:
If you like to play around with transform run the iframe from MDN below:
Look at the link below for more info:
<< CSS transform >>
Some time in the future, we can write it like this:
This will become especially useful when applying individual classes on an element:
This syntax is defined in the in-progress CSS Transforms Level 2 specification, but can't find anything about current browser support other then chrome canary. Hope some day i'll come back and update browser support here ;)
Found the info in this article which you might want to check out regarding workarounds for current browsers.
A simple way to apply multiple transform is this
But also don't forget that you need to add prefix to let it work in all browsers as some browers like safari, IE not support tranform property without prefix.