Esta tradução está incompleta. Ajude atraduzir este artigo.
This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for the proper prefixes to use in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the spec changes.
Sumário
A propriedade CSS backface-visibility
determina se deve ser exibido ou não a parte de trás do elemento para o usuário. A parte de trás de um elemento é sempre um fundo transparente, deixando, quando visível, uma imagem espelho da parte da frente a ser exibida.
Há casos quando nós não querendo que a parte da frente de um elemento seja visível pela parte de trás, quando estamos fazendo um efeito de giro de cartões (colocando dois elementos lado a lado).
Esta propriedade não possui nenhum efeito em transformações 2D quando não há nenhum tipo de perspectiva.
Initial value | visible |
---|---|
Aplica-se a | qualquer elemento transformavel |
Inherited | não |
Midia | visual |
Computed value | as specified |
Animatable | não |
Canonical order | the unique non-ambiguous order defined by the formal grammar |
Sintaxe
backface-visibility: visible; backface-visibility: hidden;
Valores
Esta propriedade tem dois valores (exclusivos):
visible
significa que a parte de trás estará visível, permitindo que a parte da frente seja exibida como espelhohidden
significa que a parte de trás não é visível, sendo então escondida pela parte da frente do elemento
Sintaxe formal
visible | hidden
Exemplos
Cubos com faces transparentes
Conteúdo HTML
<table> <tbody> <tr> <th><code>backface-visibility: visible;</code></th> <th><code>backface-visibility: hidden;</code></th> </tr> <tr> <td> <div class="container"> <div class="cube showbf"> <div class="face front">1</div> <div class="face back">2</div> <div class="face right">3</div> <div class="face left">4</div> <div class="face top">5</div> <div class="face bottom">6</div> </div> </div> <p> Todas as faces são transparentes e há três faces atrás que estão visíveis através das faces da frente.</p> </td> <td> <div class="container"> <div class="cube hidebf"> <div class="face front">1</div> <div class="face back">2</div> <div class="face right">3</div> <div class="face left">4</div> <div class="face top">5</div> <div class="face bottom">6</div> </div> </div> <p>Nenhuma face é opaca, mas as três faces de trás estarão sempre escondidas agora.</p> </td> </tr> </tbody> </table>
Conteúdo CSS
/* Shorthand classes that will show or hide the three back faces of the "cube" */ .hidebf div { backface-visibility: hidden; -webkit-backface-visibility: hidden; } .showbf div { backface-visibility: visible; -webkit-backface-visibility: visible; } /* Define the container div, the cube div, and a generic face */ .container { width: 150px; height: 150px; margin: 75px 0 0 75px; border: none; } .cube { width: 100%; height: 100%; perspective: 550px; perspective-origin: 150% 150%; transform-style: preserve-3d; -webkit-perspective: 300px; -webkit-perspective-origin: 150% 150%; -webkit-transform-style: preserve-3d; } .face { display: block; position: absolute; width: 100px; height: 100px; border: none; line-height: 100px; font-family: sans-serif; font-size: 60px; color: white; text-align: center; } /* Define each face based on direction */ .front { background: rgba(0, 0, 0, 0.3); transform: translateZ(50px); -webkit-transform: translateZ(50px); } .back { background: rgba(0, 255, 0, 1); color: black; transform: rotateY(180deg) translateZ(50px); -webkit-transform: rotateY(180deg) translateZ(50px); } .right { background: rgba(196, 0, 0, 0.7); transform: rotateY(90deg) translateZ(50px); -webkit-transform: rotateY(90deg) translateZ(50px); } .left { background: rgba(0, 0, 196, 0.7); transform: rotateY(-90deg) translateZ(50px); -webkit-transform: rotateY(-90deg) translateZ(50px); } .top { background: rgba(196, 196, 0, 0.7); transform: rotateX(90deg) translateZ(50px); -webkit-transform: rotateX(90deg) translateZ(50px) } .bottom { background: rgba(196, 0, 196, 0.7); transform: rotateX(-90deg) translateZ(50px); -webkit-transform: rotateX(-90deg) translateZ(50px); } /* Make the table a little nicer */ th, p, td { background-color: #EEEEEE; margin: 0px; padding: 6px; font-family: sans-serif; text-align: left; }
Resultado
Especificações
Especificação | Status | Comentário |
---|---|---|
CSS Transforms Level 1 The definition of 'backface-visibility' in that specification. |
Working Draft | Definição Inicial |
Compatibilidade de Browsers
Funcionalidade | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Suporte básico | 12-webkit | 10 (10)-moz 16 (16) |
10 | 15-webkit | (Yes)-webkit |
Funcionalidade | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suporte Básico | 3.0-webkit | (Yes)-webkit | 10.0 (10)-moz 16.0 (16) |
8.1 11-webkit |
(Yes)-webkit | (Yes)-webkit |