CSS Almanac
backface-visibility
The backface-visibility property relates to 3D transforms. With 3D transforms, you can manage to rotate an element so what we think of as the "front" of an element no longer faces the screen. For instance, this would flip an element away from the screen:
.flip {
-webkit-transform: rotateY(180deg);
-moz-transform: rotateY(180deg);
-ms-transform: rotateY(180deg);
}
It will look as if you picked it up with a spatula and flipped it over like a pancake. That's because the default for backface-visibility is visible. Instead of it being visible, you could hide it.
.flip {
-webkit-transform: rotateY(180deg);
-moz-transform: rotateY(180deg);
-ms-transform: rotateY(180deg);
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
-ms-backface-visibility: hidden;
}
This is useful when doing 3D effects. For instance:
Works properly
Front
Back
Problematic in WebKit because backface-visibility not hidden
Front
Back
This isn't problematic in Firefox for whatever reason, although the property works the same way.
More Information
Browser Support
| Chrome | Safari | Firefox | Opera | IE | Android | iOS |
|---|---|---|---|---|---|---|
| 12+ | 4+ | 10+ | 11.60- | 10+ | 3.0+ | 2.0+ |
Cool
This is very cool for menu designs.
Finally some other browsers have begun implementing this cool feature that’s been around in safari for a while now.
I’ve noticed this property doesn’t work on elements that have been absolutely positioned (in chrome anyway).
Is there anyway you could change the THICKNESS of the actual div ? to show that the div isn’t flat? like a Depth? I think that would be really cool!
but its still cool.
Hey, very nice article. Helped me in some cases when i used this css rule.
But I am in big dilemma regarding this.
For last many days, i have been struggling canvas drawing operation(different shapes) in sencha touch(javascript) application.
The drawing of lines where a bit slow while the finger moved ahead of the line while drawing it in the IPAD in canvas.
I was not able to figure out that what made this application little slow. Then suddenly, when i added backface-visiblity: visible, propery in css of the body, the drawing become faster as it should be.
But what is the importance of this css in relation to canvas drawing, as there is no animation going on while drawing something on canvas?
Thanks.
DigWP
A book and blog co-authored by Jeff Starr and myself about the World's most popular publishing platform.
Quotes on Design
Design, like Art, can be an elusive word to define and an awfully fun thing to have opinions about.
HTML-Ipsum
One-click copy to clipboard access to Lorem Ipsum text that comes wrapped in a variety of HTML.
Bookshelf
Hey Chris, what books do you recommend? These, young fertile mind, these.