@lism-css/mcp 0.20.0 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/data/docs-index.json +822 -141
- package/dist/data/guides/SKILL.md +7 -2
- package/dist/data/guides/antipatterns.md +2 -2
- package/dist/data/guides/base-styles.md +12 -16
- package/dist/data/guides/components-core.md +7 -7
- package/dist/data/guides/components-ui.md +8 -4
- package/dist/data/guides/css-rules.md +3 -3
- package/dist/data/guides/customize.md +116 -34
- package/dist/data/guides/naming.md +3 -3
- package/dist/data/guides/primitive-class.md +2 -2
- package/dist/data/guides/primitives/a--icon.md +2 -2
- package/dist/data/guides/primitives/l--autoColumns.md +8 -8
- package/dist/data/guides/property-class/hov.md +7 -7
- package/dist/data/guides/property-class/max-sz.md +2 -2
- package/dist/data/guides/property-class.md +23 -18
- package/dist/data/guides/responsive.md +24 -5
- package/dist/data/guides/set-class.md +64 -27
- package/dist/data/guides/tokens.md +31 -30
- package/dist/data/guides/trait-class/has--gutter.md +20 -4
- package/dist/data/guides/trait-class/has--transition.md +1 -1
- package/dist/data/guides/trait-class/is--boxLink.md +6 -6
- package/dist/data/guides/trait-class/is--container.md +1 -1
- package/dist/data/guides/trait-class/is--wrapper.md +11 -5
- package/dist/data/guides/trait-class.md +2 -2
- package/dist/data/guides/utility-class.md +1 -1
- package/dist/data/meta.js +2 -2
- package/dist/lib/markdown-utils.d.ts +1 -1
- package/dist/tools/convert-css.js +1 -1
- package/dist/tools/get-guide.js +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# -hov(ホバー)
|
|
2
2
|
|
|
3
|
-
hover 時の挙動を制御する Property Class。`:hover` 擬似クラスで動作する系と、親の `set--
|
|
3
|
+
hover 時の挙動を制御する Property Class。`:hover` 擬似クラスで動作する系と、親の `set--hov` に連動する系の 2 系統に分かれる。
|
|
4
4
|
|
|
5
5
|
## 基本情報
|
|
6
6
|
|
|
@@ -15,10 +15,10 @@ hover 時の挙動を制御する Property Class。`:hover` 擬似クラスで
|
|
|
15
15
|
|------|------|
|
|
16
16
|
| `-hov:-{prop}` | `--hov-{prop}` 変数を受け取り、hover 時に該当プロパティを変化させる |
|
|
17
17
|
| `-hov:{preset}` | hover 時のスタイルセットをプリセット名でまとめて適用する |
|
|
18
|
-
| `-hov:in:{preset}` | 親要素の `set--
|
|
18
|
+
| `-hov:in:{preset}` | 親要素の `set--hov` を起点に、子要素のスタイルを変化させる |
|
|
19
19
|
|
|
20
20
|
`-hov:-{prop}` と `-hov:{preset}` は `@media (any-hover: hover)` 内で定義されるため、タッチデバイスでは無効。
|
|
21
|
-
`-hov:in:*` はメディアクエリ外で、親の `set--
|
|
21
|
+
`-hov:in:*` はメディアクエリ外で、親の `set--hov` がセットする `--_isHov` / `--_notHov` 変数で動作する。
|
|
22
22
|
|
|
23
23
|
トランジションを付けたい場合は [`has--transition`](../trait-class/has--transition.md) クラスを併用する。
|
|
24
24
|
|
|
@@ -70,7 +70,7 @@ hover 時のスタイルセットをプリセット名でまとめて適用す
|
|
|
70
70
|
|
|
71
71
|
## `-hov:in:{preset}` — 親連動
|
|
72
72
|
|
|
73
|
-
親要素に `set--
|
|
73
|
+
親要素に `set--hov` を付けると、`--_isHov` / `--_notHov` 変数が hover 状態に応じて切り替わる。`-hov:in:*` はこの変数を参照する仕組み。
|
|
74
74
|
|
|
75
75
|
| クラス | 効果 | 仕組み |
|
|
76
76
|
|--------|------|--------|
|
|
@@ -79,7 +79,7 @@ hover 時のスタイルセットをプリセット名でまとめて適用す
|
|
|
79
79
|
| `-hov:in:zoom` | 親 hover 時にズーム | `scale: var(--_isHov, 1.1)` |
|
|
80
80
|
|
|
81
81
|
```jsx
|
|
82
|
-
<Frame set="
|
|
82
|
+
<Frame set="hov" isBoxLink href="#" ar="16/9">
|
|
83
83
|
<Media isLayer hasTransition hov="in:zoom" src="..." />
|
|
84
84
|
<Layer hasTransition hov="in:show" bgc="rgb(0 0 0 / 40%)">...</Layer>
|
|
85
85
|
</Frame>
|
|
@@ -139,5 +139,5 @@ hover 時のスタイルセットをプリセット名でまとめて適用す
|
|
|
139
139
|
## 関連
|
|
140
140
|
|
|
141
141
|
- [`has--transition`](../trait-class/has--transition.md) — hover 時の変化にトランジションを付ける
|
|
142
|
-
- [`set--
|
|
143
|
-
- [`set--
|
|
142
|
+
- [`set--hov`](../set-class.md#set--hov) — 親の hover 状態を子要素に伝播させる仕組み
|
|
143
|
+
- [`set--bxsh`](../set-class.md) — `-hov:-bxsh` と組み合わせる場合の影色再計算
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
|
|
34
34
|
:where(.has--gutter) > & {
|
|
35
35
|
inline-size: auto;
|
|
36
|
-
max-inline-size: calc(100% + var(--gutter
|
|
37
|
-
margin-inline: calc(var(--gutter
|
|
36
|
+
max-inline-size: calc(100% + var(--gutter) * 2);
|
|
37
|
+
margin-inline: calc(var(--gutter) * -1);
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
```
|
|
@@ -65,7 +65,7 @@ Lism コンポーネントの Propsに渡す値の頭に `:` を付けると、
|
|
|
65
65
|
| **Prop** | クラス名に使う省略名(例: `-fz:l` の `fz` 部分)。Lism コンポーネントの Props 名でもある |
|
|
66
66
|
| **CSS プロパティ** | 実際に制御される CSS プロパティ |
|
|
67
67
|
| **プリセット値クラス** | そのまま使えるクラス名の一覧(`-{prop}:{value}` 形式)。`—` はカスタム値のみ対応 |
|
|
68
|
-
| **BP** | ブレークポイント対応クラス(`-{prop}_{bp}` 形式)のサポート状況。`✔` は `sm`・`md
|
|
68
|
+
| **BP** | ブレークポイント対応クラス(`-{prop}_{bp}` 形式)のサポート状況。`✔` は `sm`・`md`・`lg` に対応、`—` は非対応 |
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
## 全 Prop 一覧
|
|
@@ -77,24 +77,24 @@ Lism コンポーネントの Propsに渡す値の頭に `:` を付けると、
|
|
|
77
77
|
| Prop | CSS プロパティ | プリセット値クラス | BP |
|
|
78
78
|
|------|--------------|-------------|-----|
|
|
79
79
|
| `f` | `font` | `-f:inherit` | — |
|
|
80
|
-
| `fz` | `font-size` | `-fz:
|
|
80
|
+
| `fz` | `font-size` | `-fz:base`, `-fz:5xl`〜`-fz:2xs` | ✔ |
|
|
81
81
|
| `fw` | `font-weight` | `-fw:light`, `-fw:normal`, `-fw:bold`, `-fw:100`〜`-fw:900` | — |
|
|
82
82
|
| `ff` | `font-family` | `-ff:base`, `-ff:accent`, `-ff:mono` | — |
|
|
83
83
|
| `fs` | `font-style` | `-fs:italic` | — |
|
|
84
|
-
| `
|
|
85
|
-
| `
|
|
84
|
+
| `hl` | `--hl`(ハーフレディング) | `-hl:base`, `-hl:xs`, `-hl:s`, `-hl:l`, `-hl:0` | ✔ |
|
|
85
|
+
| `lh` | `line-height`(`--hl` 経由・互換) | `-lh:base`, `-lh:xs`, `-lh:s`, `-lh:l`, `-lh:1` | — |
|
|
86
86
|
| `lts` | `letter-spacing` | `-lts:base`, `-lts:s`, `-lts:l`, `-lts:xl` | — |
|
|
87
87
|
| `ta` | `text-align` | `-ta:center`, `-ta:left`, `-ta:right` | — |
|
|
88
88
|
| `td` | `text-decoration` | `-td:none` | — |
|
|
89
89
|
| `tt` | `text-transform` | `-tt:upper`, `-tt:lower` | — |
|
|
90
90
|
|
|
91
|
-
**注意:**
|
|
91
|
+
**注意:** Lism はハーフレディングで `line-height` を管理します(`line-height: calc(1em + var(--hl) * 2)`)。正規のプロパティは `hl` で、`--hl` にトークン値をセットします(`hl="0"` でハーフレディングなし、BP 指定可)。`lh` は互換ショートカットで、トークン値・`1` は `--hl` を制御し、`lh="1.7"` のような任意値はそのまま CSS `line-height` を出力します。新規コードでは `hl` を推奨します。
|
|
92
92
|
|
|
93
93
|
### 表示・可視性
|
|
94
94
|
|
|
95
95
|
| Prop | CSS プロパティ | プリセット値クラス | BP |
|
|
96
96
|
|------|--------------|-------------|-----|
|
|
97
|
-
| `d` | `display` | `-d:none`, `-d:block`, `-d:flex`, `-d:inline-flex`, `-d:grid`, `-d:inline-grid`, `-d:inline`, `-d:inline-block` | ✔
|
|
97
|
+
| `d` | `display` | `-d:none`, `-d:block`, `-d:flex`, `-d:inline-flex`, `-d:grid`, `-d:inline-grid`, `-d:inline`, `-d:inline-block` | ✔ |
|
|
98
98
|
| `o` | `opacity` | `-o:0`, `-o:mp`, `-o:p`, `-o:pp`, `-o:ppp` | — |
|
|
99
99
|
| `v` | `visibility` | `-v:hidden` | — |
|
|
100
100
|
| `ov` | `overflow` | `-ov:hidden`, `-ov:auto`, `-ov:clip` | — |
|
|
@@ -118,6 +118,7 @@ Lism コンポーネントの Propsに渡す値の頭に `:` を付けると、
|
|
|
118
118
|
| `bsz` | `block-size` | — | — |
|
|
119
119
|
| `min-bsz` | `min-block-size` | — | — |
|
|
120
120
|
| `max-bsz` | `max-block-size` | — | — |
|
|
121
|
+
| `contentSize` | `--contentSize` 変数のみ | `-contentSize:s`, `-contentSize:m`, `-contentSize:l`, `-contentSize:xl` | — |
|
|
121
122
|
|
|
122
123
|
**`max-sz` の特殊クラス:**
|
|
123
124
|
- `-max-sz:full` — `has--gutter` 内では gutter 分を含めた全幅に拡張
|
|
@@ -125,6 +126,10 @@ Lism コンポーネントの Propsに渡す値の頭に `:` を付けると、
|
|
|
125
126
|
|
|
126
127
|
→ 詳細は [property-class/max-sz.md](./property-class/max-sz.md) 参照
|
|
127
128
|
|
|
129
|
+
**`contentSize` について:**
|
|
130
|
+
`--contentSize` 変数をセットする isVar タイプの Prop です。`is--wrapper` と組み合わせるとコンテンツ幅の上限となり、`set--bleed` と組み合わせると `--bleed` の計算基準値として使われます。
|
|
131
|
+
プリセット値(`s`, `m`, `l`, `xl`)は `-contentSize:{value}` クラスを出力し、それ以外の任意値は `--contentSize: {value}` をスタイル属性として出力します。
|
|
132
|
+
|
|
128
133
|
### 背景
|
|
129
134
|
|
|
130
135
|
| Prop | CSS プロパティ | プリセット値クラス | BP |
|
|
@@ -167,13 +172,13 @@ Lism コンポーネントの Propsに渡す値の頭に `:` を付けると、
|
|
|
167
172
|
|------|--------------|-------------|-----|
|
|
168
173
|
| `bxsh` | `box-shadow` | `-bxsh:0`, `-bxsh:10`, `-bxsh:20`, `-bxsh:30`, `-bxsh:40`, `-bxsh:50` | ✔ |
|
|
169
174
|
|
|
170
|
-
**補足:** 影色(`--shc`)を要素内で上書きして再計算させたい場合は、`set--
|
|
175
|
+
**補足:** 影色(`--shc`)を要素内で上書きして再計算させたい場合は、`set--bxsh` クラスを併用する。
|
|
171
176
|
|
|
172
177
|
### ポジション
|
|
173
178
|
|
|
174
179
|
| Prop | CSS プロパティ | プリセット値クラス | BP |
|
|
175
180
|
|------|--------------|-------------|-----|
|
|
176
|
-
| `pos` | `position` | `-pos:static`, `-pos:fixed`, `-pos:sticky`, `-pos:relative`, `-pos:absolute` |
|
|
181
|
+
| `pos` | `position` | `-pos:static`, `-pos:fixed`, `-pos:sticky`, `-pos:relative`, `-pos:absolute` | ✔ |
|
|
177
182
|
| `z` | `z-index` | `-z:-1`, `-z:0`, `-z:1`, `-z:99` | — |
|
|
178
183
|
| `t` | `top` | `-t:0`, `-t:50%`, `-t:100%` | — |
|
|
179
184
|
| `l` | `left` | `-l:0`, `-l:50%`, `-l:100%` | — |
|
|
@@ -225,7 +230,7 @@ SPACEトークン(全値): `5`, `10`, `15`, `20`, `25`, `30`, `35`, `40`, `5
|
|
|
225
230
|
|
|
226
231
|
| Prop | CSS プロパティ | プリセット値クラス | BP |
|
|
227
232
|
|------|--------------|-------------|-----|
|
|
228
|
-
| `g` | `gap` | `-g:0`, `-g:inherit`, `-g:5`, `-g:10`, `-g:20`, ... (SPACEトークン) | ✔
|
|
233
|
+
| `g` | `gap` | `-g:0`, `-g:inherit`, `-g:5`, `-g:10`, `-g:20`, ... (SPACEトークン) | ✔ |
|
|
229
234
|
| `cg` | `column-gap` | — | — |
|
|
230
235
|
| `rg` | `row-gap` | — | — |
|
|
231
236
|
|
|
@@ -246,22 +251,22 @@ SPACEトークン(全値): `5`, `10`, `15`, `20`, `25`, `30`, `35`, `40`, `5
|
|
|
246
251
|
| Prop | CSS プロパティ | プリセット値クラス | BP |
|
|
247
252
|
|------|--------------|-------------|-----|
|
|
248
253
|
| `gt` | `grid-template` | — | ✔ |
|
|
249
|
-
| `gta` | `grid-template-areas` | — | ✔
|
|
250
|
-
| `gtc` | `grid-template-columns` | `-gtc:subgrid` | ✔
|
|
251
|
-
| `gtr` | `grid-template-rows` | `-gtr:subgrid` | ✔
|
|
254
|
+
| `gta` | `grid-template-areas` | — | ✔ |
|
|
255
|
+
| `gtc` | `grid-template-columns` | `-gtc:subgrid` | ✔ |
|
|
256
|
+
| `gtr` | `grid-template-rows` | `-gtr:subgrid` | ✔ |
|
|
252
257
|
| `gaf` | `grid-auto-flow` | `-gaf:row`, `-gaf:column` | ✔ |
|
|
253
258
|
| `gac` | `grid-auto-columns` | — | — |
|
|
254
259
|
| `gar` | `grid-auto-rows` | — | — |
|
|
255
|
-
| `cols` | `--cols` 変数 | — | ✔
|
|
260
|
+
| `cols` | `--cols` 変数 | — | ✔ |
|
|
256
261
|
| `rows` | `--rows` 変数 | — | ✔ |
|
|
257
262
|
|
|
258
263
|
### Grid アイテム
|
|
259
264
|
|
|
260
265
|
| Prop | CSS プロパティ | プリセット値クラス | BP |
|
|
261
266
|
|------|--------------|-------------|-----|
|
|
262
|
-
| `ga` | `grid-area` | `-ga:1/1` | ✔
|
|
263
|
-
| `gc` | `grid-column` | `-gc:1/-1` | ✔
|
|
264
|
-
| `gr` | `grid-row` | `-gr:1/-1` | ✔
|
|
267
|
+
| `ga` | `grid-area` | `-ga:1/1` | ✔ |
|
|
268
|
+
| `gc` | `grid-column` | `-gc:1/-1` | ✔ |
|
|
269
|
+
| `gr` | `grid-row` | `-gr:1/-1` | ✔ |
|
|
265
270
|
| `gcs` | `grid-column-start` | — | — |
|
|
266
271
|
| `gce` | `grid-column-end` | — | — |
|
|
267
272
|
| `grs` | `grid-row-start` | — | — |
|
|
@@ -280,7 +285,7 @@ SPACEトークン(全値): `5`, `10`, `15`, `20`, `25`, `30`, `35`, `40`, `5
|
|
|
280
285
|
| `aslf` | `align-self` | `-aslf:start`, `-aslf:center`, `-aslf:end`, `-aslf:stretch` | — |
|
|
281
286
|
| `jslf` | `justify-self` | `-jslf:start`, `-jslf:center`, `-jslf:end`, `-jslf:stretch` | — |
|
|
282
287
|
| `pslf` | `place-self` | `-pslf:start`, `-pslf:center`, `-pslf:end` | — |
|
|
283
|
-
| `order` | `order` | `-order:0`, `-order:-1`, `-order:1` |
|
|
288
|
+
| `order` | `order` | `-order:0`, `-order:-1`, `-order:1` | ✔ |
|
|
284
289
|
|
|
285
290
|
**コンポーネント用ショートハンド:** `ai`, `ac`, `ji`, `jc`, `aslf`, `jslf` では `s`→`start`, `e`→`end`, `c`→`center`, `fs`→`flex-start`, `fe`→`flex-end` のショートハンドが使えます。
|
|
286
291
|
|
|
@@ -309,7 +314,7 @@ Lism CSS のボーダーは CSS 変数(`--bds` / `--bdw` / `--bdc`)で管理
|
|
|
309
314
|
|------|------|---------|
|
|
310
315
|
| `-hov:-{prop}` | `--hov-{prop}` 変数で hover 時の値を変化させる | `:hover`(`@media (any-hover: hover)` 内) |
|
|
311
316
|
| `-hov:{preset}` | hover 時のスタイルをプリセットで適用 | `:hover`(同上) |
|
|
312
|
-
| `-hov:in:{preset}` | 親の `set--
|
|
317
|
+
| `-hov:in:{preset}` | 親の `set--hov` を起点に子のスタイルを変化させる | 親に `set--hov` が必要 |
|
|
313
318
|
|
|
314
319
|
**標準クラス:** `-hov:-c`, `-hov:-bgc`, `-hov:-bdc`, `-hov:-o`, `-hov:-bxsh`, `-hov:underline`, `-hov:in:hide`, `-hov:in:show`, `-hov:in:zoom`
|
|
315
320
|
|
|
@@ -19,16 +19,35 @@ Lism CSS は**コンテナクエリ**をデフォルトで採用しています
|
|
|
19
19
|
```
|
|
20
20
|
Smartphone ──┬── Tablet (Portrait) ──┬── Tablet (Landscape) ──┬── Laptop and up
|
|
21
21
|
│ │ │
|
|
22
|
-
sm:480px md:800px
|
|
22
|
+
sm:480px md:800px lg:1120px
|
|
23
23
|
```
|
|
24
24
|
|
|
25
25
|
| BP | 値 | 効くタイミング |
|
|
26
26
|
|----|-----|----------------|
|
|
27
|
+
| `xs` | 0(無効) | (opt-in) |
|
|
27
28
|
| `sm` | 480px | sm 以上 |
|
|
28
29
|
| `md` | 800px | md 以上 |
|
|
29
|
-
|
|
|
30
|
+
| `lg` | 1120px | lg 以上 |
|
|
31
|
+
| `xl` | 0(無効) | (opt-in) |
|
|
30
32
|
|
|
31
|
-
**レスポンシブ対応の Property Class
|
|
33
|
+
**レスポンシブ対応の Property Class は、標準で `sm` / `md` / `lg` のすべてに対応。** どの Prop がレスポンシブ対応かは property-class.md の BP 列を参照。レスポンシブ非対応の Prop でブレイクポイント指定を使う場合は customize.md 参照の SCSS カスタマイズが必要です。
|
|
34
|
+
|
|
35
|
+
**`xs` / `xl` は opt-in**:
|
|
36
|
+
- デフォルト値は `0`(無効)で、CSS は出力されません。`lism.config.js` の `breakpoints` でサイズを与えると有効化されます(customize.md 参照)。
|
|
37
|
+
- 型(Lism コンポーネント)でも `sm` / `md` / `lg` のみがデフォルトで補完・許可されます。`xs` / `xl` を使う場合は `declare module 'lism-css'` で `BreakpointRegistry` を拡張して解禁します。
|
|
38
|
+
|
|
39
|
+
```ts
|
|
40
|
+
// src/lism.d.ts など
|
|
41
|
+
import 'lism-css';
|
|
42
|
+
declare module 'lism-css' {
|
|
43
|
+
interface BreakpointRegistry {
|
|
44
|
+
xl: true; // 配列の 5 要素目 [..., xl] と { xl: ... } を解禁
|
|
45
|
+
xs: true; // { xs: ... } を解禁(xs は配列記法では書けない)
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
- `xs` は配列記法では書けません(配列のインデックス → BP の対応が `[base, sm, md, lg, xl]` で固定のため)。オブジェクト記法(`{ xs: ... }`)でのみ指定します。`xl` は配列記法・オブジェクト記法の両方で利用できます。
|
|
32
51
|
|
|
33
52
|
例: `-d:none -d_sm:block` → デフォルト非表示、`sm` 以上で表示。
|
|
34
53
|
|
|
@@ -99,10 +118,10 @@ Smartphone ──┬── Tablet (Portrait) ──┬── Tablet (Landscape)
|
|
|
99
118
|
配列形式またはオブジェクト形式でレスポンシブ値を指定します。
|
|
100
119
|
|
|
101
120
|
```jsx
|
|
102
|
-
// 配列形式: [
|
|
121
|
+
// 配列形式: 位置は [base, sm, md, lg, xl] で固定(xs は配列記法では書けない)
|
|
103
122
|
<Box p={[20, 30, 40]} fz={['s', 'm', 'l']} />
|
|
104
123
|
|
|
105
|
-
//
|
|
124
|
+
// オブジェクト形式(xs を使う場合はこちら)
|
|
106
125
|
<Box p={{ base: '20', sm: '30', md: '40' }} />
|
|
107
126
|
```
|
|
108
127
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# `set--` クラス
|
|
2
2
|
|
|
3
3
|
`@layer lism-base` に属し、HTML 要素の基礎スタイリングまたは CSS 変数のセットアップだけを行うクラス群です。
|
|
4
|
-
HTML では直接クラスを付与し、Lism コンポーネントでは `set` prop(`set="plain"`, `set="revert"`, `set="
|
|
4
|
+
HTML では直接クラスを付与し、Lism コンポーネントでは `set` prop(`set="plain"`, `set="revert"`, `set="bxsh"` 等)で指定します。
|
|
5
5
|
|
|
6
6
|
`set` prop の記法(複数値指定・`-` prefix による除外)は [components-core.md](./components-core.md#共通-props) を参照してください。
|
|
7
7
|
|
|
@@ -10,18 +10,19 @@ set-- は目的別に 2 カテゴリに分かれます。
|
|
|
10
10
|
| カテゴリ | 用途 | クラス |
|
|
11
11
|
|---------|------|--------|
|
|
12
12
|
| 基礎スタイリング | HTML 要素のリセット/リバート | `set--plain` / `set--revert` |
|
|
13
|
-
| 変数のセット | CSS 変数のセットアップのみを行う | `set--
|
|
13
|
+
| 変数のセット | CSS 変数のセットアップのみを行う | `set--bxsh` / `set--hov` / `set--bdrsInner` / `set--bleed` / `set--s` |
|
|
14
14
|
|
|
15
|
-
`set--
|
|
15
|
+
`set--{name}` の `{name}` は、そのクラスがセットアップする CSS 変数の名称に対応します(例: `--bxsh--*` → `bxsh`、`--_isHov` / `--_notHov` → `hov`、`--bdrs--inner` → `bdrsInner`、`--s*` → `s`)。
|
|
16
16
|
|
|
17
17
|
## TOC
|
|
18
18
|
|
|
19
19
|
- [`set--plain`](#set--plain)
|
|
20
20
|
- [`set--revert`](#set--revert)
|
|
21
|
-
- [`set--
|
|
22
|
-
- [`set--
|
|
23
|
-
- [`set--
|
|
24
|
-
- [`set--
|
|
21
|
+
- [`set--bxsh`](#set--bxsh)
|
|
22
|
+
- [`set--hov`](#set--hov)
|
|
23
|
+
- [`set--bdrsInner`](#set--bdrsinner)
|
|
24
|
+
- [`set--bleed`](#set--bleed)
|
|
25
|
+
- [`set--s`](#set--s)
|
|
25
26
|
|
|
26
27
|
[詳細](https://lism-css.com/docs/set-class.md)
|
|
27
28
|
|
|
@@ -35,10 +36,11 @@ set-- は目的別に 2 カテゴリに分かれます。
|
|
|
35
36
|
|--------|---------------|
|
|
36
37
|
| `set--plain` | [`_plain.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_plain.scss) |
|
|
37
38
|
| `set--revert` | [`_revert.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_revert.scss) |
|
|
38
|
-
| `set--
|
|
39
|
-
| `set--
|
|
40
|
-
| `set--
|
|
41
|
-
| `set--
|
|
39
|
+
| `set--bxsh` | [`_tokens.gen.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/tokens/_tokens.gen.scss) |
|
|
40
|
+
| `set--hov` | [`_hov.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_hov.scss) |
|
|
41
|
+
| `set--bdrsInner` | [`_bdrsInner.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_bdrsInner.scss) |
|
|
42
|
+
| `set--bleed` | [`_bleed.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_bleed.scss) |
|
|
43
|
+
| `set--s` | [`_tokens.gen.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/tokens/_tokens.gen.scss) |
|
|
42
44
|
|
|
43
45
|
---
|
|
44
46
|
|
|
@@ -80,24 +82,24 @@ Lism CSSでは、クラスを持つリスト(`ul` / `ol`)ではスタイル
|
|
|
80
82
|
</Lism>
|
|
81
83
|
```
|
|
82
84
|
|
|
83
|
-
## `set--
|
|
85
|
+
## `set--bxsh`
|
|
84
86
|
|
|
85
87
|
`SHADOW` トークン変数(`--bxsh--{N}`)を再計算するためのクラスです。`:root` で定義される `--shc`(影の色)を特定要素で上書きしたい時に利用します。
|
|
86
88
|
|
|
87
89
|
使用例:
|
|
88
90
|
```html
|
|
89
|
-
<div class="l--box set--
|
|
91
|
+
<div class="l--box set--bxsh -bxsh:20" style="--shc: hsl(200 50% 50% / 20%)">...</div>
|
|
90
92
|
```
|
|
91
93
|
```jsx
|
|
92
|
-
<Box set="
|
|
94
|
+
<Box set="bxsh" bxsh='20' style={{ '--shc': 'hsl(200 50% 50% / 20%)' }}>...</Box>
|
|
93
95
|
```
|
|
94
96
|
|
|
95
97
|
|
|
96
|
-
## `set--
|
|
98
|
+
## `set--hov`
|
|
97
99
|
|
|
98
100
|
ホバー状態の判定変数(`--_notHov`, `--_isHov`)を次のようにセットします。主に**子要素のホバースタイルを制御する**時に活用します。
|
|
99
101
|
|
|
100
|
-
- `--_isHov`は非hover
|
|
102
|
+
- `--_isHov`は非hover時(かつ非focus-within時)にのみ空白定義さます。
|
|
101
103
|
- `--_notHov`は逆に、hover時またはfocus-within時に空白定義されます。
|
|
102
104
|
|
|
103
105
|
この空変数トリックにより、次のような書き方ができます。
|
|
@@ -120,12 +122,12 @@ Lism CSSでは、クラスを持つリスト(`ul` / `ol`)ではスタイル
|
|
|
120
122
|
}
|
|
121
123
|
```
|
|
122
124
|
|
|
123
|
-
さらに、親要素に`set--
|
|
125
|
+
さらに、親要素に`set--hov`を付与してその子要素で`--_isHov`変数と`--_notHov`変数を使うことで、親要素のhoverをトリガーとして子要素のスタイルを変化させることも可能になります。
|
|
124
126
|
|
|
125
127
|
例えば、親のボックスがhoverされたら、その内部の画像をズームするようなケースで活用でき、`-hov:in:zoom`クラスが標準で用意されています。
|
|
126
128
|
|
|
127
129
|
```html
|
|
128
|
-
<a href="###" class="l--frame set--
|
|
130
|
+
<a href="###" class="l--frame set--hov is--boxLink -ar:21/9 -ov:hidden">
|
|
129
131
|
<img class="has--transition -hov:in:zoom" src="https://cdn.lism-css.com/img/a-2.jpg" width="960" height="640" loading="lazy" />
|
|
130
132
|
<div class="is--layer -bgc" style="--c: #fff; --bgc: rgb(0 0 0 / 50%)"></div>
|
|
131
133
|
<div class="l--center is--layer -c" style="--c: #fff;">
|
|
@@ -142,38 +144,73 @@ Lism CSSでは、クラスを持つリスト(`ul` / `ol`)ではスタイル
|
|
|
142
144
|
```
|
|
143
145
|
|
|
144
146
|
|
|
145
|
-
## `set--
|
|
147
|
+
## `set--bdrsInner`
|
|
146
148
|
|
|
147
149
|
親要素の角丸(`--bdrs`)とPadding(`--p`)の値から、その内側の角丸(`--bdrs--inner`)を自動計算するためのクラスです。
|
|
148
|
-
親要素に`set--
|
|
150
|
+
親要素に`set--bdrsInner`をクラスをセットし、子要素では`-bdrs:inner`をセットすることで、計算された`--bdrs--inner`をセットすることができます。
|
|
149
151
|
|
|
150
152
|
(親要素では`bdrs`と`p`の指定が必須となります。)
|
|
151
153
|
|
|
152
154
|
使用例:
|
|
153
|
-
```html "set--
|
|
154
|
-
<div class="set--
|
|
155
|
+
```html "set--bdrsInner" "-bdrs:inner"
|
|
156
|
+
<div class="set--bdrsInner -p:15 -bdrs:40 -bd">
|
|
155
157
|
<div class="-bdrs:inner">...</div>
|
|
156
158
|
</div>
|
|
157
159
|
```
|
|
158
160
|
```jsx
|
|
159
|
-
<Lism set="
|
|
161
|
+
<Lism set="bdrsInner" p="15" bdrs="40" bd>
|
|
160
162
|
<Lism bdrs="inner">...</Lism>
|
|
161
163
|
</Lism>
|
|
162
164
|
```
|
|
163
165
|
|
|
164
166
|
|
|
165
|
-
## `set--
|
|
167
|
+
## `set--bleed`
|
|
168
|
+
|
|
169
|
+
片側ブリードレイアウトを組むのに便利な `--bleed` 変数を生成するクラスです。コンテンツ幅(`--contentSize`)の外側の余白量がセットされます。ただし、ガター幅(`--gutter` / `--gutter--base`)を下限とし、これより狭くなる場合はガター幅を返します。
|
|
170
|
+
|
|
171
|
+
`--contentSize` が未指定の場合は `--sz--m` を基準値として使用します。
|
|
172
|
+
|
|
173
|
+
`padding-inline: var(--bleed)` を子要素に当てれば、その要素だけコンテンツ幅の外側ガターまで広げられるため、画像とテキストを並べた片側ブリードの 2 カラムなどに活用できます。
|
|
174
|
+
|
|
175
|
+
使用例(`Columns` の片側だけブリードさせる):
|
|
176
|
+
```html
|
|
177
|
+
<div class="is--container">
|
|
178
|
+
<div class="l--columns set--bleed -contentSize:s -cols_sm -g:0 -g_sm -ai:center" style="--cols:1;--cols_sm:2;--g_sm:var(--s10)">
|
|
179
|
+
<div class="l--box has--gutter -ps -py:30 -py_sm" style="--ps:var(--bleed);--py_sm:0">
|
|
180
|
+
<p>...</p>
|
|
181
|
+
</div>
|
|
182
|
+
<div class="l--frame -bdrs:inner -ar:3/2">
|
|
183
|
+
<img src="..." alt="" />
|
|
184
|
+
</div>
|
|
185
|
+
</div>
|
|
186
|
+
</div>
|
|
187
|
+
```
|
|
188
|
+
```jsx
|
|
189
|
+
<Container>
|
|
190
|
+
<Columns set="bleed" contentSize="s" cols={[1, 2]} g={['0', '10']} ai="center">
|
|
191
|
+
<Box hasGutter ps="var(--bleed)" py={["30", "0"]}>
|
|
192
|
+
<p>...</p>
|
|
193
|
+
</Box>
|
|
194
|
+
<Frame bdrs="inner" ar="3/2">
|
|
195
|
+
<img src="..." alt="" />
|
|
196
|
+
</Frame>
|
|
197
|
+
</Columns>
|
|
198
|
+
</Container>
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
## `set--s`
|
|
166
203
|
|
|
167
204
|
余白トークン(`--s5`〜`--s80`)を現在のフォントサイズ基準で再計算するためのクラスです。ButtonやBadgeなど、内部余白を要素自身のfont-sizeに追従させたい時に利用します。
|
|
168
205
|
|
|
169
|
-
詳細なスケールと使い方は[tokens.mdの`set--
|
|
206
|
+
詳細なスケールと使い方は[tokens.mdの`set--s`ユーティリティ](./tokens.md#set--s-ユーティリティ)を参照してください。
|
|
170
207
|
|
|
171
208
|
使用例:
|
|
172
209
|
|
|
173
210
|
```html
|
|
174
|
-
<button class="set--
|
|
211
|
+
<button class="set--s -fz:s -py:10 -px:20">...</button>
|
|
175
212
|
```
|
|
176
213
|
|
|
177
214
|
```jsx
|
|
178
|
-
<Button set="
|
|
215
|
+
<Button set="s" fz="s" py="10" px="20">...</Button>
|
|
179
216
|
```
|
|
@@ -10,7 +10,7 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
10
10
|
- [トークン概要テーブル](#トークン概要テーブル)
|
|
11
11
|
- [余白 (space)](#余白-space)
|
|
12
12
|
- [フォントサイズ (fz)](#フォントサイズ-fz)
|
|
13
|
-
- [行間 (lh
|
|
13
|
+
- [行間 (hl/lh)](#行間-hllh)
|
|
14
14
|
- [字間 (lts)](#字間-lts)
|
|
15
15
|
- [フォント (ff)](#フォント-ff)
|
|
16
16
|
- [ウェイト (fw)](#ウェイト-fw)
|
|
@@ -18,7 +18,7 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
18
18
|
- [角丸 (bdrs)](#角丸-bdrs)
|
|
19
19
|
- [影 (bxsh)](#影-bxsh)
|
|
20
20
|
- [フロー余白 (flow)](#フロー余白-flow)
|
|
21
|
-
- [
|
|
21
|
+
- [ガター (gutter)](#ガター-gutter)
|
|
22
22
|
- [カラー](#カラー)
|
|
23
23
|
- [トークン値の命名規則](#トークン値の命名規則)
|
|
24
24
|
|
|
@@ -31,18 +31,18 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
31
31
|
| カテゴリ | トークン値 | CSS変数パターン | 例 |
|
|
32
32
|
|---|---|---|---|
|
|
33
33
|
| 余白 (space) | `5`, `10`, `15`, `20`, `25`, `30`, `35`, `40`, `50`, `60`, `70`, `80` | `--s{N}` | `--s20` |
|
|
34
|
-
| フォントサイズ (fz) | `
|
|
35
|
-
| ハーフレディング・行間 (lh
|
|
34
|
+
| フォントサイズ (fz) | `base`, `2xs`, `xs`, `s`, `m`, `l`, `xl`, `2xl`, `3xl`, `4xl`, `5xl` | `--fz--{key}` | `--fz--l` |
|
|
35
|
+
| ハーフレディング・行間 (hl/lh) | `base`, `xs`, `s`, `l` | `--hl--{key}` | `--hl--s` |
|
|
36
36
|
| 字間 (lts) | `base`, `s`, `l`, `xl` | `--lts--{key}` | `--lts--s` |
|
|
37
37
|
| フォント (ff) | `base`, `accent`, `mono` | `--ff--{key}` | `--ff--mono` |
|
|
38
38
|
| ウェイト (fw) | `light`, `normal`, `bold` | `--fw--{key}` | `--fw--bold` |
|
|
39
39
|
| 透明度 (o) | `mp`, `p`, `pp`, `ppp` | `--o--{key}` | `--o--p` |
|
|
40
40
|
| 角丸 (bdrs) | `10`, `20`, `30`, `40`, `99`, `inner` | `--bdrs--{key}` | `--bdrs--20` |
|
|
41
41
|
| 影 (bxsh) | `10`, `20`, `30`, `40`, `50` | `--bxsh--{N}` | `--bxsh--20` |
|
|
42
|
-
| サイズ (sz) | `xs`, `s`, `m`, `l`, `xl
|
|
42
|
+
| サイズ (sz) | `xs`, `s`, `m`, `l`, `xl` | `--sz--{key}` | `--sz--l` |
|
|
43
43
|
| アスペクト比 (ar) | `og` | `--ar--{key}` | `--ar--og` |
|
|
44
44
|
| フロー余白 (flow) | `base`, `s` | `--flow--{key}` | `--flow--base` |
|
|
45
|
-
| セマンティックカラー (
|
|
45
|
+
| セマンティックカラー (color) | `base`, `base-2`, `text`, `text-2`, `divider`, `link`, `brand`, `accent`, `neutral` | `--{name}` | `--brand` |
|
|
46
46
|
| パレットカラー (palette) | `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `gray`, `white`, `black` | `--{name}` | `--red` |
|
|
47
47
|
|
|
48
48
|
|
|
@@ -70,19 +70,19 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
70
70
|
|
|
71
71
|
`--s40` 以降の主軸は係数 `1, 2, 3, 5, 8, 13, 21, 34`(フィボナッチ数列)に基づく。`--s5`〜`--s35` の前半部分は、主軸トークン間を補う中間値(4px / 12px / 20px / 32px 相当)として配置している。`--s-unit` を上書きするとスケール全体を比例的に調整できる。
|
|
72
72
|
|
|
73
|
-
### `set--
|
|
73
|
+
### `set--s` ユーティリティ
|
|
74
74
|
|
|
75
|
-
`set--
|
|
75
|
+
`set--s` クラスを当てた要素のスコープ内では `--s-unit` が `0.5em` に切り替わり、`--s10`〜`--s80` が現在のフォントサイズ基準で再計算される。Button / Badge / インライン要素など、内部余白をフォントサイズに追従させたい部品で使う。
|
|
76
76
|
|
|
77
77
|
```html
|
|
78
78
|
<!-- ボタンの padding が button 自身の font-size に追従する -->
|
|
79
|
-
<button class="set--
|
|
79
|
+
<button class="set--s -fz:s -py:10 -px:20">...</button>
|
|
80
80
|
```
|
|
81
81
|
|
|
82
82
|
`--s-unit` を任意値で上書きすれば、別の基準にも切り替えられる。
|
|
83
83
|
|
|
84
84
|
```html
|
|
85
|
-
<button class="set--
|
|
85
|
+
<button class="set--s -p:10" style="--s-unit: .4375em">...</button>
|
|
86
86
|
```
|
|
87
87
|
|
|
88
88
|
|
|
@@ -103,12 +103,11 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
103
103
|
| `--fz--xs` | `calc(1em * var(--fz-mol) / (var(--fz-mol) + 2))` | XS(mol/(mol+2)) |
|
|
104
104
|
| `--fz--2xs` | `calc(1em * var(--fz-mol) / (var(--fz-mol) + 3))` | 最小(mol/(mol+3)) |
|
|
105
105
|
| `--fz--base` | `1rem` | 本文の基本フォントサイズ |
|
|
106
|
-
| `--fz--root` | — | `:root` のフォントサイズ |
|
|
107
106
|
|
|
108
107
|
`--fz-mol` を上書きすることでスケール全体を調整可能(7以上の値に対応)。
|
|
109
108
|
|
|
110
109
|
|
|
111
|
-
## 行間 (lh
|
|
110
|
+
## 行間 (hl/lh)
|
|
112
111
|
|
|
113
112
|
ハーフレディングの大きさ。Lism CSSでは、`line-height` は `calc(1em + var(--hl) * 2)` で算出される。`--hl-unit`(≒ 2px)を基準単位とする。
|
|
114
113
|
|
|
@@ -134,8 +133,8 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
134
133
|
|
|
135
134
|
| CSS変数 | 値 |
|
|
136
135
|
|---------|-----|
|
|
137
|
-
| `--ff--base` | `-apple-system, 'BlinkMacSystemFont', 'Hiragino Sans', sans-serif
|
|
138
|
-
| `--ff--accent` | `
|
|
136
|
+
| `--ff--base` | `-apple-system, 'BlinkMacSystemFont', 'Hiragino Sans', sans-serif` |
|
|
137
|
+
| `--ff--accent` | `Georgia, serif` |
|
|
139
138
|
| `--ff--mono` | `ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace` |
|
|
140
139
|
|
|
141
140
|
|
|
@@ -176,7 +175,7 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
176
175
|
|
|
177
176
|
## 影 (bxsh)
|
|
178
177
|
|
|
179
|
-
`--shc`(シャドウカラー)と `--shsz--{N}`(シャドウサイズ)を組み合わせて構成される。要素ごとに `--shc` を上書きして再計算したい場合は、`set--
|
|
178
|
+
`--shc`(シャドウカラー)と `--shsz--{N}`(シャドウサイズ)を組み合わせて構成される。要素ごとに `--shc` を上書きして再計算したい場合は、`set--bxsh` クラスを併用する。
|
|
180
179
|
|
|
181
180
|
| CSS変数 | 値 |
|
|
182
181
|
|---------|-----|
|
|
@@ -188,7 +187,8 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
188
187
|
|
|
189
188
|
| CSS変数 | 初期値 |
|
|
190
189
|
|---------|-----|
|
|
191
|
-
| `--
|
|
190
|
+
| `--shadow` | `hsl(220 4% 8% / 12%)` |
|
|
191
|
+
| `--shc` | `var(--shadow)` |
|
|
192
192
|
| `--shsz--10` | `0px 1px 3px` |
|
|
193
193
|
| `--shsz--20` | `0px 2px 6px` |
|
|
194
194
|
| `--shsz--30` | `0px 4px 12px` |
|
|
@@ -206,19 +206,20 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
206
206
|
| `--flow--s` | `var(--s20)` | `-flow:s` で適用される小さめの余白 |
|
|
207
207
|
|
|
208
208
|
|
|
209
|
-
##
|
|
209
|
+
## ガター (gutter)
|
|
210
210
|
|
|
211
|
-
|
|
211
|
+
サイト全体のガター(左右余白)量を扱う変数群。`--flow--base` / `--flow` と同じく「基準値(`:root`)+ 要素ローカル機能変数」の2層構造を採る。
|
|
212
212
|
|
|
213
|
-
| CSS変数 |
|
|
214
|
-
|
|
215
|
-
| `--gutter
|
|
213
|
+
| CSS変数 | 初期値 | 説明 |
|
|
214
|
+
|---------|--------|------|
|
|
215
|
+
| `--gutter--base` | `var(--s30)` | サイトコンテンツの左右余白の基準値(`:root` で定義) |
|
|
216
|
+
| `--gutter` | `var(--gutter--base)` | `.has--gutter` で要素ローカルに初期化される機能変数。要素単位で `style="--gutter: 20px"` のように上書き可能 |
|
|
216
217
|
|
|
217
218
|
参照される主な箇所:
|
|
218
219
|
|
|
219
|
-
- `has--gutter` の `padding-inline`
|
|
220
|
-
- `is--container` の `--sz--bleed` 計算(`100cqi + var(--gutter
|
|
221
|
-
- `-max-sz:full` の負 margin による hang
|
|
220
|
+
- `has--gutter` の `padding-inline: var(--gutter)`
|
|
221
|
+
- `is--container` の `--sz--bleed` 計算(`100cqi + var(--gutter) * 2`)
|
|
222
|
+
- `-max-sz:full` の負 margin による hang 拡張(`var(--gutter)` を参照)
|
|
222
223
|
|
|
223
224
|
|
|
224
225
|
## カラー
|
|
@@ -229,11 +230,11 @@ CSSコードを書く場合やコンポーネントのPropsに値を指定する
|
|
|
229
230
|
|
|
230
231
|
| CSS変数 | デフォルト値 | 説明 |
|
|
231
232
|
|---------|------------|------|
|
|
232
|
-
| `--base` | `hsl(
|
|
233
|
-
| `--base-2` | `hsl(
|
|
234
|
-
| `--text` | `hsl(
|
|
235
|
-
| `--text-2` | `hsl(
|
|
236
|
-
| `--divider` | `hsl(
|
|
233
|
+
| `--base` | `hsl(220 0% 99%)` | ベース背景色 |
|
|
234
|
+
| `--base-2` | `hsl(220 4% 95%)` | 代替背景色 |
|
|
235
|
+
| `--text` | `hsl(220 0% 8%)` | 基本テキスト色 |
|
|
236
|
+
| `--text-2` | `hsl(220 4% 32%)` | 補助テキスト色 |
|
|
237
|
+
| `--divider` | `hsl(220 4% 88%)` | 区切り線色 |
|
|
237
238
|
| `--link` | `oklch(50% 0.3 240)` | リンク色 |
|
|
238
239
|
| `--brand` | `#1e5f8c` | ブランド色 |
|
|
239
240
|
| `--accent` | `#d94a6a` | アクセント色 |
|
|
@@ -248,7 +249,7 @@ OKLCH で定義されたカラーパレット。`--L`(明度)と `--C`(彩
|
|
|
248
249
|
| `--red` | `oklch(var(--L) var(--C) 20)` |
|
|
249
250
|
| `--orange` | `oklch(calc(var(--L) + 6%) calc(var(--C) - 0.01) 48)` |
|
|
250
251
|
| `--yellow` | `oklch(calc(var(--L) + 12%) calc(var(--C) - 0.02) 80)` |
|
|
251
|
-
| `--green` | `oklch(calc(var(--L) + 4%) calc(var(--C) - 0.
|
|
252
|
+
| `--green` | `oklch(calc(var(--L) + 4%) calc(var(--C) - 0.02) 152)` |
|
|
252
253
|
| `--blue` | `oklch(calc(var(--L) - 4%) calc(var(--C) + 0.01) 264)` |
|
|
253
254
|
| `--purple` | `oklch(calc(var(--L) - 4%) calc(var(--C) + 0.01) 288)` |
|
|
254
255
|
| `--pink` | `oklch(calc(var(--L) + 2%) calc(var(--C) + 0.01) 352)` |
|
|
@@ -13,19 +13,25 @@
|
|
|
13
13
|
|
|
14
14
|
```scss
|
|
15
15
|
.has--gutter {
|
|
16
|
-
|
|
16
|
+
--gutter: var(--gutter--base);
|
|
17
|
+
padding-inline: var(--gutter);
|
|
17
18
|
}
|
|
18
19
|
```
|
|
19
20
|
|
|
20
|
-
`--
|
|
21
|
+
ガター変数は `--flow--base` / `--flow` と同じ「基準値 + 要素ローカル機能変数」の2層構造を採る。
|
|
22
|
+
|
|
23
|
+
- `--gutter--base`: `:root` で `var(--s30)` をデフォルトに持つサイト全体の基準値
|
|
24
|
+
- `--gutter`: `.has--gutter` で `var(--gutter--base)` に初期化される要素ローカルの機能変数
|
|
21
25
|
|
|
22
26
|
## CSS 変数
|
|
23
27
|
|
|
24
28
|
| 変数 | 役割 | デフォルト |
|
|
25
29
|
|------|------|-----------|
|
|
26
|
-
| `--gutter
|
|
30
|
+
| `--gutter--base` | サイト全体のガター基準値(`:root` 定義) | `var(--s30)` |
|
|
31
|
+
| `--gutter` | `.has--gutter` 要素ローカルの機能変数 | `var(--gutter--base)` |
|
|
27
32
|
|
|
28
|
-
|
|
33
|
+
- サイト全体の基準を変えたい場合は `:root` 等で `--gutter--base` を上書きする
|
|
34
|
+
- 個別要素のみガター量を変えたい場合は、その要素で `style="--gutter: 20px"` のように `--gutter` を直接上書きする
|
|
29
35
|
|
|
30
36
|
## Usage
|
|
31
37
|
|
|
@@ -34,12 +40,22 @@
|
|
|
34
40
|
<p>Lorem ipsum content...</p>
|
|
35
41
|
<p>Lorem ipsum content...</p>
|
|
36
42
|
</div>
|
|
43
|
+
|
|
44
|
+
<!-- 個別要素でガター量を上書きする例 -->
|
|
45
|
+
<div class="has--gutter" style="--gutter: 20px">
|
|
46
|
+
<p>Lorem ipsum content...</p>
|
|
47
|
+
</div>
|
|
37
48
|
```
|
|
38
49
|
```jsx
|
|
39
50
|
<Lism hasGutter>
|
|
40
51
|
<p>Lorem ipsum content...</p>
|
|
41
52
|
<p>Lorem ipsum content...</p>
|
|
42
53
|
</Lism>
|
|
54
|
+
|
|
55
|
+
{/* 個別要素でガター量を上書きする例 */}
|
|
56
|
+
<Lism hasGutter style={{ '--gutter': '20px' }}>
|
|
57
|
+
<p>Lorem ipsum content...</p>
|
|
58
|
+
</Lism>
|
|
43
59
|
```
|
|
44
60
|
|
|
45
61
|
## 関連
|