web-dev-qa-db-ja.com

CSSを使用して画像を回転させるクロスブラウザの方法は?

私が取り組んでいるサイトレイアウトにはメインコンテンツエリアがあり、コンテンツエリアの4つの角のそれぞれにコーナーグラフィックがあります。全体的な効果は、デスクブロッターの効果です。

左上隅のコードは次のとおりです。

.corner-top-left    { width:96px ;
height:96px ;
background:url("images/corner.png") no-repeat ;
position:absolute ;
top:-5px ;
left:-5px ;
z-index:3000 ;
}

4つの個別のコーナー画像を作成するのではなく、(可能であれば)私がやりたいことは、元の画像(corner.png)を使用し、CSSを使用して回転させます。

これを行うためのクロスブラウザ互換の方法はありますか?

どうもありがとう!

33
Cynthia

http://jsfiddle.net/tJkgP/2/

45度回転するCSS:

.desk
{
    width: 50%;
    height: 400px;
    margin: 5em auto;
    border: solid 1px #000;
    overflow: visible;
}
.desk img
{
    behavior:url(-ms-transform.htc);
    /* Firefox */
    -moz-transform:rotate(45deg);
    /* Safari and Chrome */
    -webkit-transform:rotate(45deg);
    /* Opera */
    -o-transform:rotate(45deg);
    /* IE9 */
    -ms-transform:rotate(45deg);
    /* IE6,IE7 */
    filter: progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476);
    /* IE8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476)"; 

}

IE6-8 CSSはここから来ました: IEのCSS回転プロパティ

55
Alex W