このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

rotateX()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

rotateX()CSS関数で、要素の形を変化させずに横座標 (水平軸) の周りを回転させる座標変換を定義します。結果は <transform-function> データ型になります。

試してみましょう

transform: rotateX(0);
transform: rotateX(45deg);
transform: rotateX(-0.2turn);
transform: rotateX(3.142rad);
<section id="default-example">
  <img
    class="transition-all"
    id="example-element"
    src="/shared-assets/images/examples/firefox-logo.svg"
    width="200" />
</section>

回転軸は、CSS の transform-origin プロパティで定義される原点を通ります。

メモ: rotateX(a)rotate3d(1, 0, 0, a) と等価です。

メモ: 2D 平面での回転とは異なり、 3D での回転はふつう交換可能ではありません。言い換えれば、回転の順番が結果に影響を与えます。

構文

css
rotateX(a)

a

<angle> で、回転する角度を表します。正の数の角度は時計回りの回転を、負の数の角度は反時計回りの回転を表します。

直交座標系 (ℝ^2) 同次座標系 (ℝℙ^2) 直交座標系 (ℝ^3) 同次座標系 (ℝℙ^3)
この変換は 3D 空間に適用され、平面で表すことはできません。
(1000cos(a)-sin(a)0sin(a)cos(a))\left( \begin{array}{ccc} 1 & 0 & 0 \\ 0 & \cos(a) & -\sin(a) \\ 0 & \sin(a) & \cos(a) \end{array} \right)
(10000cos(a)-sin(a)00sin(a)cos(a)00001)\left( \begin{array}{cccc} 1 & 0 & 0 & 0 \\ 0 & \cos(a) & -\sin(a) & 0 \\ 0 & \sin(a) & \cos(a) & 0 \\ 0 & 0 & 0 & 1 \end{array} \right)

形式文法

<rotateX()> = 
rotateX( [ <angle> | <zero> ] )
この構文は CSS Transforms Module Level 2 による最新の標準を反映しています。すべてのブラウザーがすべての部分を実装しているわけではありません。サポート情報についてはブラウザーの互換性を参照してください。

HTML

html
<div>通常</div>
<div class="rotated">回転</div>

CSS

css
div {
  width: 80px;
  height: 80px;
  background-color: skyblue;
}

.rotated {
  transform: rotateX(45deg);
  background-color: pink;
}

結果

仕様書

Specification
CSS Transforms Module Level 2
# funcdef-rotatex

ブラウザーの互換性

関連情報