IT用語辞典バイナリ | さくいん | サイトマップ | ヘルプ | お気に入りに追加  
CSS3リファレンス
IT用語辞典バイナリ<パソコン用語・コンピュータ辞書>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
コンピュータ偉人伝<人物・画像・写真・プログラミング>
拡張子辞典<ファイル・変換・変更・表示>
HTML5タグリファレンス
CSS3リファレンス
HTML5 JavaScript API
エクセル関数リファレンス
ITパスポート試験
 
  
  IT用語辞典バイナリ > CSS3リファレンス > トランスフォーム > transform-styleの解説
  カテゴリ別さくいん
  タグ別さくいん

transform-styleの解説

子要素の3Dトランスフォームを指定するには?

要素書式

transform-style: 【子要素の三次元上での描画の指定】 ;

対応ブラウザ

  • IE 9:×
  • Firefox 10.0:○(-moz-transform-style)
  • Opera 11.61:×
  • Chrome 17.0:○(-webkit-transform-style)
  • Safari 5.1:○(-webkit-transform-style)

    ※現在、動作にベンダープレフィックスが必要なブラウザは、括弧内にベンダープレフィックス付のプロパティを記載しています。
    ブラウザWindows 7上で動作確認を行っています。
    ユーザーの設定より、異なる挙動をする場合があります。

値一覧

内容
flat三次元変形で、子要素の親要素への平面投影を行う。既定値。
preserve-3d三次元変形で、子要素の親要素への平面投影を行わない。

解説文

transform-styleプロパティは、三次元変形で、親要素の描画と子要素の描画をどう関係づけるかを指定します。

transform-styleプロパティの値に「flat」が指定された場合、子要素は、親要素に、平面的に投影された形で描画されます。言い換えると、子要素は、親要素の平面に描かれた立体的な絵のように振る舞います。

これに対して、transform-styleプロパティの値に「preserve-3d」が指定された場合、親要素の描画される平面に対する、子要素の三次元上の位置関係はそのまま維持されます。その為、場合によっては子要素が影に隠れて見えなくなる場合もあります。

例えば、子要素に対して、奥行方向に100pxの平行移動を加えると、親要素に何も変形を加えていない状態では、子要素は、三次元空間では、親要素の背後、100pxの位置にあることになります。

この状態で、親要素を、上下の軸(Y軸)を中心に時計回りに回転させると、通常の三次元空間では、親要素の後ろにあった子要素も位置関係を保って回転し、90度で右側100px、180度で手前側100pxの位置にあることになるはずです。

しかし、既定(「transform-style:flat」)では、そのような動作にはならず、子要素は、親要素の上に張り付いたように描画されます。つまり、子要素は親要素の平面上に存在するものとして扱われます。

transform-styleプロパティの値に「preserve-3d」を指定した場合は、こうした、親要素の平面上への投影操作は行われません。

このプロパティは継承されず、直接の子要素に対してしか効果がありません。子要素にさらに子要素がある場合は、そこでも指定する必要があります。

なお、ChromeSafariは、実装がまだ不十分なため、環境によっては正しく描画されない場合があります。

サンプルソース

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
   .box{
       width:200px;
       height:200px;
       border: solid 1px black;
       position:absolute;
       left:100px;
       top:100px;
       font-size:2em;
   }
   
   #parent{
   
       /* 
           子要素が親要素に平面投影されないように指定します 
       */
       transform-style: preserve-3d;
       -moz-transform-style: preserve-3d;
       -webkit-transform-style: preserve-3d;
       
       /* 親要素を回転させます */
       transform: rotateX(-20deg) rotateY(-20deg);
       -moz-transform: rotateX(-20deg) rotateY(-20deg);
       -webkit-transform: rotateX(-20deg) rotateY(-20deg);
   }
   
   /* 以下で子要素を変形させて立体的なボックスを作成します */
   
   #box1{
       background-color:rgba(0,255,0,0.3);
       transform: translateZ(100px);
       -moz-transform: translateZ(100px);
       -webkit-transform: translateZ(100px);
   }
   #box2{
       background-color:rgba(0,255,0,0.3);
       transform: translateZ(-100px);
       -moz-transform: translateZ(-100px);
       -webkit-transform: translateZ(-100px);
   }
   #box3{
       background-color:rgba(255,0,0,0.3);
       transform: translateY(100px) rotateX(90deg);
       -moz-transform: translateY(100px) rotateX(90deg);
       -webkit-transform: translateY(100px) rotateX(90deg);
   }
   #box4{
       background-color:rgba(255,0,0,0.3);
       transform: translateY(-100px) rotateX(90deg);
       -moz-transform: translateY(-100px) rotateX(90deg);
       -webkit-transform: translateY(-100px) rotateX(90deg);
   }
   #box5{
       background-color:rgba(0,0,255,0.3);
       transform: translateX(100px) rotateY(90deg);
       -moz-transform: translateX(100px) rotateY(90deg);
       -webkit-transform: translateX(100px) rotateY(90deg);
   }
   #box6{ 
       background-color:rgba(0,0,255,0.3);
       transform: translateX(-100px) rotateY(90deg);
       -moz-transform: translateX(-100px) rotateY(90deg);
       -webkit-transform: translateX(-100px) rotateY(90deg);
   }
</style>
</head>
<body>
<div id="parent">
   <div id="box1" class="box">手前側</div>
   <div id="box2" class="box">奥側</div>
   <div id="box3" class="box">下側</div>
   <div id="box4" class="box">上側</div>
   <div id="box5" class="box">右側</div>
   <div id="box6" class="box">左側</div>
</div>
</body>
</html>

関連項目



シャープのマスクシャープのマスク
シャープが製造・販売する不織布マスク。
Surface Book 3Surface Book 3
Microsoftが販売するデタッチャブルPC。
Surface Go 2Surface Go 2
Microsoftが発表した2in1 PC。

 ・ITパスポート試験とは
 ・試験範囲と内容
 ・サンプル問題にチャレンジ

 ・Windowsの歴史
ジョン・マッカーシー LISPの開発者
ジョン・マッカーシー
人工知能の研究分野における第一人者。
スティーブ・ジョブズ Appleの共同創設者
スティーブ・ジョブズ
「Mac」や「iPhone」を生み出した経営者。
デニス・リッチー C言語、UNIXの開発者
デニス・リッチー
C言語の設計、UNIXの開発に携わった人物。
».m4b MPEG-4オーディオファイルの拡張子。 up!
».m4r iPhoneの着メロにするAACファイルにつく拡張子。 up!
».xlsx Excel 2007で作成したファイルのデフォルトの拡張子。
».docx Word 2007の標準的な保存形式。XML形式となっている。

2024年4月17日現在
ランキング1   ICT (用語辞典)
ランキング2   AirDrop (用語辞典)
ランキング3   コンテキスト  (用語辞典)
ランキング4   セグメント  (用語辞典)
ランキング5   アノテーション  (用語辞典)
ランキング6   オムニチャネル  (用語辞典)
ランキング7   スワイプ  (用語辞典)
ランキング8   インスタンス化  (用語辞典)
ランキング9   カラム  (用語辞典)
ランキング10   FOMO  (用語辞典)
RSS 0.91 RSS 1.0 RSS 2.0
IT用語辞典バイナリについて運営会社についてお問い合わせ先テクニカルライター募集利用規約
プライバシーポリシー著作権・商標について協力社一覧Weblio 辞書スマート翻訳英和辞典 - Weblio辞書Weblio英会話
©2023 GRAS Group, Inc. All rights reserved.