zfb
GitHub リポジトリ

検索したい単語を入力

いつでも検索バーを開ける

角丸

設定された角丸の値を、全角、辺の角、個別の角に適用します。

四隅、物理辺の二つの角、または一つの角を丸めます。

クラスと CSS の早見表

クラスの例期待される宣言
rounded-cardborder-top-left-radius: var(--zw-radius-card); border-top-right-radius: var(--zw-radius-card); border-bottom-right-radius: var(--zw-radius-card); border-bottom-left-radius: var(--zw-radius-card);
rounded-b-cardborder-bottom-right-radius: var(--zw-radius-card); border-bottom-left-radius: var(--zw-radius-card);
rounded-l-cardborder-top-left-radius: var(--zw-radius-card); border-bottom-left-radius: var(--zw-radius-card);
rounded-r-cardborder-top-right-radius: var(--zw-radius-card); border-bottom-right-radius: var(--zw-radius-card);
rounded-t-cardborder-top-left-radius: var(--zw-radius-card); border-top-right-radius: var(--zw-radius-card);
rounded-bl-cardborder-bottom-left-radius: var(--zw-radius-card);
rounded-br-cardborder-bottom-right-radius: var(--zw-radius-card);
rounded-tl-cardborder-top-left-radius: var(--zw-radius-card);
rounded-tr-cardborder-top-right-radius: var(--zw-radius-card);
例の設定

共通プレビュー設定では spec 1、reset: "none"、strict モード、tokens.spacingUnit: "0.25rem"、ブレークポイントなしを明示しています。名前付きの値は各例で設定し、既定のパレットやテーマは継承しません。wind-demo クラスはデモ用の自作スタイルです。各例では、その CSS とユーティリティの宣言を分けて確認できます。

使い方の例

辺と個別の角を丸める

すべてのカードで同じ radius トークンを使い、対象にした辺または角だけを変えます。

辺と個別の角を丸める
HTML
<div class="wind-demo-radius-grid"><div class="wind-demo-radius-card rounded-card bg-panel text-ink p-2">all</div><div class="wind-demo-radius-card rounded-t-card bg-panel text-ink p-2">top</div><div class="wind-demo-radius-card rounded-r-card bg-panel text-ink p-2">right</div><div class="wind-demo-radius-card rounded-b-card bg-panel text-ink p-2">bottom</div><div class="wind-demo-radius-card rounded-l-card bg-panel text-ink p-2">left</div><div class="wind-demo-radius-card rounded-tl-card bg-panel text-ink p-2">top-left</div><div class="wind-demo-radius-card rounded-tr-card bg-panel text-ink p-2">top-right</div><div class="wind-demo-radius-card rounded-br-card bg-panel text-ink p-2">bottom-right</div><div class="wind-demo-radius-card rounded-bl-card bg-panel text-ink p-2">bottom-left</div></div>
CSS
@layer zw-reset, zw-tokens, zfb-hi, base, components;
@layer zw-tokens {
  :root {
    --zw-color-accent: #075985;
    --zw-color-alert: #8b1e3f;
    --zw-color-focus: #0f766e;
    --zw-color-ink: #16324f;
    --zw-color-panel: #edf4f8;
    --zw-color-white: #fff;
    --zw-radius-card: .75rem;
    --zw-radius-pill: 9999px;
    --zw-spacing-unit: .25rem;
  }
}
.wind-demo-radius-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(5rem, 1fr));
  gap: .6rem;
  max-width: 27rem;
}

.wind-demo-radius-card {
  display: grid;
  place-items: center;
  min-height: 3.2rem;
  text-align: center;
  font: 12px / 1.25 system-ui, sans-serif;
}
.p-2 {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}
.text-ink {
  color: var(--zw-color-ink);
}
.bg-panel {
  background-color: var(--zw-color-panel);
}
.rounded-card {
  border-top-left-radius: var(--zw-radius-card);
  border-top-right-radius: var(--zw-radius-card);
  border-bottom-right-radius: var(--zw-radius-card);
  border-bottom-left-radius: var(--zw-radius-card);
}
.rounded-b-card {
  border-bottom-right-radius: var(--zw-radius-card);
  border-bottom-left-radius: var(--zw-radius-card);
}
.rounded-l-card {
  border-top-left-radius: var(--zw-radius-card);
  border-bottom-left-radius: var(--zw-radius-card);
}
.rounded-r-card {
  border-top-right-radius: var(--zw-radius-card);
  border-bottom-right-radius: var(--zw-radius-card);
}
.rounded-t-card {
  border-top-left-radius: var(--zw-radius-card);
  border-top-right-radius: var(--zw-radius-card);
}
.rounded-bl-card {
  border-bottom-left-radius: var(--zw-radius-card);
}
.rounded-br-card {
  border-bottom-right-radius: var(--zw-radius-card);
}
.rounded-tl-card {
  border-top-left-radius: var(--zw-radius-card);
}
.rounded-tr-card {
  border-top-right-radius: var(--zw-radius-card);
}
この例の設定
{
  "wind": {
    "spec": 1,
    "reset": "none",
    "strict": true,
    "tokens": {
      "spacingUnit": "0.25rem",
      "colors": {
        "ink": "#16324f",
        "accent": "#075985",
        "focus": "#0f766e",
        "alert": "#8b1e3f",
        "panel": "#edf4f8",
        "white": "#ffffff"
      },
      "radii": {
        "card": "0.75rem",
        "pill": "9999px"
      }
    },
    "breakpoints": {},
    "defaultTransitionTimingFunction": "ease",
    "authoredClasses": {
      "wind-demo-radius-card": true,
      "wind-demo-radius-grid": true
    },
    "safelist": {
      "docs-preview": [
        "bg-panel",
        "p-2",
        "rounded-b-card",
        "rounded-bl-card",
        "rounded-br-card",
        "rounded-card",
        "rounded-l-card",
        "rounded-r-card",
        "rounded-t-card",
        "rounded-tl-card",
        "rounded-tr-card",
        "text-ink"
      ]
    }
  }
}
デモ用の自作 CSS
.wind-demo-radius-grid { display: grid; grid-template-columns: repeat(3, minmax(5rem, 1fr)); gap: 0.6rem; max-width: 27rem; }
.wind-demo-radius-card { display: grid; place-items: center; min-height: 3.2rem; text-align: center; font: 12px/1.25 system-ui, sans-serif; }

名前付き、組み込み、個別の値を使う

pill は設定済みの名前、角括弧は 18px、full と none は対応キーワードです。

名前付き、組み込み、個別の値を使う
HTML
<div class="wind-demo-radius-values"><div class="wind-demo-radius-value rounded-pill bg-panel text-ink p-2">named pill</div><div class="wind-demo-radius-value rounded-[18px] bg-panel text-ink p-2">custom 18px</div><div class="wind-demo-radius-value rounded-full bg-panel text-ink p-2">full</div><div class="wind-demo-radius-value rounded-none bg-panel text-ink p-2">none</div></div>
CSS
@layer zw-reset, zw-tokens, zfb-hi, base, components;
@layer zw-tokens {
  :root {
    --zw-color-accent: #075985;
    --zw-color-alert: #8b1e3f;
    --zw-color-focus: #0f766e;
    --zw-color-ink: #16324f;
    --zw-color-panel: #edf4f8;
    --zw-color-white: #fff;
    --zw-radius-card: .75rem;
    --zw-radius-pill: 9999px;
    --zw-spacing-unit: .25rem;
  }
}
.wind-demo-radius-values {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  max-width: 30rem;
}

.wind-demo-radius-value {
  display: inline-block;
  font: 13px / 1.4 system-ui, sans-serif;
}
.p-2 {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}
.text-ink {
  color: var(--zw-color-ink);
}
.bg-panel {
  background-color: var(--zw-color-panel);
}
.rounded-\[18px\] {
  border-top-left-radius: 18px;
  border-top-right-radius: 18px;
  border-bottom-right-radius: 18px;
  border-bottom-left-radius: 18px;
}
.rounded-full {
  border-top-left-radius: 9999px;
  border-top-right-radius: 9999px;
  border-bottom-right-radius: 9999px;
  border-bottom-left-radius: 9999px;
}
.rounded-none {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.rounded-pill {
  border-top-left-radius: var(--zw-radius-pill);
  border-top-right-radius: var(--zw-radius-pill);
  border-bottom-right-radius: var(--zw-radius-pill);
  border-bottom-left-radius: var(--zw-radius-pill);
}
この例の設定
{
  "wind": {
    "spec": 1,
    "reset": "none",
    "strict": true,
    "tokens": {
      "spacingUnit": "0.25rem",
      "colors": {
        "ink": "#16324f",
        "accent": "#075985",
        "focus": "#0f766e",
        "alert": "#8b1e3f",
        "panel": "#edf4f8",
        "white": "#ffffff"
      },
      "radii": {
        "card": "0.75rem",
        "pill": "9999px"
      }
    },
    "breakpoints": {},
    "defaultTransitionTimingFunction": "ease",
    "authoredClasses": {
      "wind-demo-radius-value": true,
      "wind-demo-radius-values": true
    },
    "safelist": {
      "docs-preview": [
        "bg-panel",
        "p-2",
        "rounded-[18px]",
        "rounded-full",
        "rounded-none",
        "rounded-pill",
        "text-ink"
      ]
    }
  }
}
デモ用の自作 CSS
.wind-demo-radius-values { display: flex; flex-wrap: wrap; gap: 0.7rem; max-width: 30rem; }
.wind-demo-radius-value { display: inline-block; font: 13px/1.4 system-ui, sans-serif; }

任意値と名前付きの値

名前付きの値は tokens.radii を参照します。rounded-card は 0.75rem、rounded-pill は 9999px と設定しています。rounded-none と rounded-full は組み込みキーワードで、それぞれ 0 と 9999px になります。rounded-[18px] のような角括弧には検証済み CSS 長さを指定できます。辺の名前は物理方向で、t/r/b/l は上/右/下/左、二文字の形は一つの角を選びます。負数は使えません。既定の半径スケールは継承しません。

関連ガイド: ユーティリティの文法 · バリアント

カタログの詳細

rounded

フィールド値
カタログ識別子v1.rounded
クラスパターンrounded-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-top-left-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位0
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-top-left-radiusresolvednull
border-top-right-radiusresolvednull
border-bottom-right-radiusresolvednull
border-bottom-left-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-fullborder-top-left-radius: 9999px; border-top-right-radius: 9999px; border-bottom-right-radius: 9999px; border-bottom-left-radius: 9999px

rounded-b

フィールド値
カタログ識別子v1.rounded-b
クラスパターンrounded-b-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-bottom-right-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位1
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-bottom-right-radius, border-bottom-left-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-bottom-right-radiusresolvednull
border-bottom-left-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-b-fullborder-bottom-right-radius: 9999px; border-bottom-left-radius: 9999px

rounded-l

フィールド値
カタログ識別子v1.rounded-l
クラスパターンrounded-l-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-top-left-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位1
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-top-left-radius, border-bottom-left-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-top-left-radiusresolvednull
border-bottom-left-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-l-fullborder-top-left-radius: 9999px; border-bottom-left-radius: 9999px

rounded-r

フィールド値
カタログ識別子v1.rounded-r
クラスパターンrounded-r-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-top-right-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位1
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-top-right-radius, border-bottom-right-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-top-right-radiusresolvednull
border-bottom-right-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-r-fullborder-top-right-radius: 9999px; border-bottom-right-radius: 9999px

rounded-t

フィールド値
カタログ識別子v1.rounded-t
クラスパターンrounded-t-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-top-left-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位1
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-top-left-radius, border-top-right-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-top-left-radiusresolvednull
border-top-right-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-t-fullborder-top-left-radius: 9999px; border-top-right-radius: 9999px

rounded-bl

フィールド値
カタログ識別子v1.rounded-bl
クラスパターンrounded-bl-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-bottom-left-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位2
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-bottom-left-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-bottom-left-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-bl-fullborder-bottom-left-radius: 9999px

rounded-br

フィールド値
カタログ識別子v1.rounded-br
クラスパターンrounded-br-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-bottom-right-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位2
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-bottom-right-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-bottom-right-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-br-fullborder-bottom-right-radius: 9999px

rounded-tl

フィールド値
カタログ識別子v1.rounded-tl
クラスパターンrounded-tl-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-top-left-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位2
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-top-left-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-top-left-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-tl-fullborder-top-left-radius: 9999px

rounded-tr

フィールド値
カタログ識別子v1.rounded-tr
クラスパターンrounded-tr-<suffix>
文法{"acceptedKinds":["keyword","token","arbitrary"],"arbitraryProperty":"border-top-right-radius","allowsFractionSlash":false,"allowsColorOpacity":false}
受け入れる値2
トークンカテゴリradii
負の値の規則forbidden
競合グループと順位radius (27)
並び順の順位2
セレクタの形ownElement
仕様バージョン1
出力するプロパティborder-top-right-radius

受け入れる値

種類接尾辞出力される値
keyword"none""0"
keyword"full""9999px"

宣言テンプレート

プロパティ値の種類固定値
border-top-right-radiusresolvednull

カタログの例

クラスの例期待される宣言
rounded-tr-fullborder-top-right-radius: 9999px

Revision History

作成更新