2

だから私はホバーでこのCSS 3D変換を使用しています...

動作: Webkit、FF 動作しない: Opera 未テスト: IE

ここの Chris の記事からわかることから、Opera は -o-backface-visibility をサポートしています (下部のブラウザー サポートの表を参照)。ただし、彼の例でも、このプロパティは Opera に固執していないようです。ただし、彼は Opera のホバー時にフォールバックを管理しているように見えるので、そこまで到達できれば満足ですが、まだそこにはいません。

http://css-tricks.com/almanac/properties/b/backface-visibility/

フィドル: http://jsfiddle.net/uxable/YHeKX/

(なんだ...私のフィドルコードに貼り付ける簡単な方法はない?あるに違いない...)

<div class="flip"> 
  <div class="card"> 
    <div class="face front">Front</div> 
    <div class="face back">Back</div> 
  </div> 
</div>

   .flip {
   position: relative;
   -webkit-perspective: 1000;
   -moz-perspective: 1000;
   -ms-perspective: 1000;
   -o-perspective: 1000;
   margin: 0 0 20px 0;
}
.card {
   width: 200px; 
   height: 50px;
   position: relative;
   -webkit-transform-style: preserve-3d;
   -webkit-transition: 0.5s;
   -moz-transform-style: preserve-3d;
   -moz-transition: 0.5s;
   -ms-transform-style: preserve-3d;
   -ms-transition: 0.5s;
   -o-transform-style: preserve-3d;
   -o-transition: 0.5s;
}
.flip:hover .card {
   -webkit-transform: rotateY(180deg);
   -moz-transform: rotateY(180deg);
   -ms-transform: rotateY(180deg);
   -o-transform: rotateY(180deg);                
}
.face {
   position: absolute;
   -webkit-backface-visibility: hidden;
   -moz-backface-visibility: hidden;
   -ms-backface-visibility: hidden;
   -o-backface-visibility: hidden;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   color: white;
   line-height: 50px;
   text-align: center;
}
.no-hide .face {
   -webkit-backface-visibility: visible;
   -moz-backface-visibility: visible;
   -ms-backface-visibility: visible;
   -o-backface-visibility: visible;
}
.front {
   background: red;
   z-index: 10;
}
.back {
   -webkit-transform: rotateY(180deg);
   -moz-transform: rotateY(180deg);
   -ms-transform: rotateY(180deg);
   -o-transform: rotateY(180deg);
   background: green; 
}
.flip:hover .front {
   z-index: 0;
} 
4

1 に答える 1