回転
対応する角度または任意の角度値で要素を回転します。
要素を時計回りまたは反時計回りに回転します。CSS の rotate プロパティを使うため、x と y の translate ユーティリティと独立して合成できます。
クラスと CSS の早見表
| クラスの例 | 期待される宣言 |
|---|---|
rotate-12 | rotate: 12deg; |
例の設定
すべてのプレビューで spec: 1、reset: "none"、strict モード、spacingUnit: "0.25rem"、空のブレークポイント、defaultTransitionTimingFunction: "ease" を明示します。一つ目の図では translate-x-8、translate-y-4、rotate-12 を同時に適用し、もう一つでは負の度数と任意の回転角を比べます。図の CSS は四角形を描いて配置するためだけに使います。
使い方の例
一つの要素を移動して回転する
rotate-12 は translate-x-8 と translate-y-4 に独立した CSS プロパティで合成され、transform ユーティリティは不要です。
一つの要素を移動して回転する
HTML
<figure class="wind-demo-figure"><div class="wind-demo-stage" aria-hidden="true"><span class="wind-demo-origin">start</span><span class="wind-demo-piece translate-x-8 translate-y-4 rotate-12">12°</span></div><figcaption class="wind-demo-caption">Independent translate-x, translate-y, and rotate utilities compose on one element without a transform utility.</figcaption></figure>CSS
@layer zw-reset, zw-tokens, zfb-hi, base, components;
@layer zw-tokens {
:root {
--zw-spacing-unit: .25rem;
}
}
@property --zw-translate-x {
syntax: "<length-percentage>";
inherits: false;
initial-value: 0px;
}
@property --zw-translate-y {
syntax: "<length-percentage>";
inherits: false;
initial-value: 0px;
}
.wind-demo-figure {
margin: 0;
color: #24364b;
font: 14px / 1.5 system-ui, sans-serif;
}
.wind-demo-stage {
position: relative;
width: min(20rem, 100%);
height: 10rem;
border: 1px solid #a7bacd;
background: linear-gradient(90deg, #f7f9fc 1px, #0000 1px), linear-gradient(#f7f9fc 1px, #0000 1px);
background-size: 1rem 1rem;
}
.wind-demo-origin, .wind-demo-piece {
position: absolute;
left: 5rem;
top: 3rem;
display: grid;
place-items: center;
width: 3.25rem;
height: 3.25rem;
}
.wind-demo-origin {
border: 1px dashed #54708b;
background: #e5edf5;
color: #38516b;
font-size: .7rem;
}
.wind-demo-piece {
border: 1px solid #22598e;
background: #a8d0f4;
color: #153c60;
font-weight: 650;
}
.wind-demo-caption {
display: block;
margin-top: .5rem;
}
.translate-x-8 {
--zw-translate-x: 2rem;
translate: var(--zw-translate-x) var(--zw-translate-y);
}
.translate-y-4 {
--zw-translate-y: 1rem;
translate: var(--zw-translate-x) var(--zw-translate-y);
}
.rotate-12 {
rotate: 12deg;
}この例の設定
{
"wind": {
"spec": 1,
"reset": "none",
"strict": true,
"tokens": {
"spacingUnit": "0.25rem"
},
"breakpoints": {},
"defaultTransitionTimingFunction": "ease",
"authoredClasses": {
"wind-demo-figure": true,
"wind-demo-stage": true,
"wind-demo-origin": true,
"wind-demo-piece": true,
"wind-demo-caption": true
},
"safelist": {
"docs-preview": [
"translate-x-8",
"translate-y-4",
"rotate-12"
]
}
}
}デモ用の自作 CSS
.wind-demo-figure { margin: 0; color: #24364b; font: 14px/1.5 system-ui, sans-serif; }
.wind-demo-stage { position: relative; width: min(20rem, 100%); height: 10rem; border: 1px solid #a7bacd; background: linear-gradient(90deg, #f7f9fc 1px, transparent 1px), linear-gradient(#f7f9fc 1px, transparent 1px); background-size: 1rem 1rem; }
.wind-demo-origin, .wind-demo-piece { position: absolute; left: 5rem; top: 3rem; display: grid; place-items: center; width: 3.25rem; height: 3.25rem; }
.wind-demo-origin { border: 1px dashed #54708b; background: #e5edf5; color: #38516b; font-size: 0.7rem; }
.wind-demo-piece { border: 1px solid #22598e; background: #a8d0f4; color: #153c60; font-weight: 650; }
.wind-demo-caption { display: block; margin-top: 0.5rem; }負の角度と任意の角度を使う
-rotate-45 は反時計回り、rotate-[0.125turn] は任意の 8 分の 1 回転を指定します。
負の角度と任意の角度を使う
HTML
<figure class="wind-demo-figure"><div class="wind-demo-stage" aria-hidden="true"><span class="wind-demo-piece -rotate-45">−45°</span><span class="wind-demo-piece wind-demo-piece-alt rotate-[0.125turn]">⅛ turn</span></div><figcaption class="wind-demo-caption">A negative class turns the other way; an arbitrary CSS angle can use turns or radians.</figcaption></figure>CSS
@layer zw-reset, zw-tokens, zfb-hi, base, components;
@layer zw-tokens {
:root {
--zw-spacing-unit: .25rem;
}
}
.wind-demo-figure {
margin: 0;
color: #24364b;
font: 14px / 1.5 system-ui, sans-serif;
}
.wind-demo-stage {
position: relative;
width: min(20rem, 100%);
height: 10rem;
border: 1px solid #a7bacd;
background: linear-gradient(90deg, #f7f9fc 1px, #0000 1px), linear-gradient(#f7f9fc 1px, #0000 1px);
background-size: 1rem 1rem;
}
.wind-demo-piece, .wind-demo-piece-alt {
position: absolute;
left: 5rem;
top: 3rem;
display: grid;
place-items: center;
width: 3.25rem;
height: 3.25rem;
}
.wind-demo-piece {
border: 1px solid #22598e;
background: #a8d0f4;
color: #153c60;
font-weight: 650;
}
.wind-demo-caption {
display: block;
margin-top: .5rem;
}
.wind-demo-piece-alt {
left: 11rem;
}
.-rotate-45 {
rotate: -45deg;
}
.rotate-\[0\.125turn\] {
rotate: 0.125turn;
}この例の設定
{
"wind": {
"spec": 1,
"reset": "none",
"strict": true,
"tokens": {
"spacingUnit": "0.25rem"
},
"breakpoints": {},
"defaultTransitionTimingFunction": "ease",
"authoredClasses": {
"wind-demo-caption": true,
"wind-demo-figure": true,
"wind-demo-piece": true,
"wind-demo-piece-alt": true,
"wind-demo-stage": true
},
"safelist": {
"docs-preview": [
"-rotate-45",
"rotate-[0.125turn]"
]
}
}
}デモ用の自作 CSS
.wind-demo-figure { margin: 0; color: #24364b; font: 14px/1.5 system-ui, sans-serif; }
.wind-demo-stage { position: relative; width: min(20rem, 100%); height: 10rem; border: 1px solid #a7bacd; background: linear-gradient(90deg, #f7f9fc 1px, transparent 1px), linear-gradient(#f7f9fc 1px, transparent 1px); background-size: 1rem 1rem; }
.wind-demo-piece, .wind-demo-piece-alt { position: absolute; left: 5rem; top: 3rem; display: grid; place-items: center; width: 3.25rem; height: 3.25rem; }
.wind-demo-piece { border: 1px solid #22598e; background: #a8d0f4; color: #153c60; font-weight: 650; }
.wind-demo-caption { display: block; margin-top: 0.5rem; }
.wind-demo-piece-alt { left: 11rem; }任意値と名前付きの値
0 から 360 までの整数は度として解釈します。対応する整数にマイナスを付けると反時計回りになります。任意の CSS 角度では deg、rad、grad、turn を使えます。例: rotate-[0.125turn]。名前付き回転スケールはありません。v1 のカタログには transform、scale、skew、GPU 用 transform ユーティリティは含まれません。
関連ガイド: ユーティリティの文法 · バリアント
カタログの詳細
rotate
| フィールド | 値 |
|---|---|
| カタログ識別子 | v1.rotate |
| クラスパターン | rotate-<suffix> |
| 文法 | {"acceptedKinds":["integer","arbitrary"],"arbitraryProperty":"rotate","allowsFractionSlash":false,"allowsColorOpacity":false} |
| 受け入れる値 | この項目には独立した値の定義がありません。 |
| トークンカテゴリ | トークンカテゴリなし |
| 負の値の規則 | allowed |
| 競合グループと順位 | rotate (39) |
| 並び順の順位 | 0 |
| セレクタの形 | ownElement |
| 仕様バージョン | 1 |
| 出力するプロパティ | rotate |
受け入れる値
この項目には独立した値の定義がありません。
宣言テンプレート
| プロパティ | 値の種類 | 固定値 |
|---|---|---|
rotate | resolved | null |
カタログの例
| クラスの例 | 期待される宣言 |
|---|---|
rotate-90 | rotate: 90deg |
Revision History
作成更新