@lism-css/mcp 0.22.0 → 0.24.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/README.ja.md +15 -15
- package/README.md +5 -5
- package/dist/data/docs-index.json +232 -96
- package/dist/data/guides/SKILL.md +162 -224
- package/dist/data/guides/antipatterns-layout.md +268 -0
- package/dist/data/guides/antipatterns.md +118 -196
- package/dist/data/guides/base-styles.md +14 -12
- package/dist/data/guides/components-core.md +26 -8
- package/dist/data/guides/components-ui.md +28 -24
- package/dist/data/guides/css-rules.md +40 -57
- package/dist/data/guides/customize.md +121 -37
- package/dist/data/guides/naming.md +23 -42
- package/dist/data/guides/primitive-class.md +5 -5
- package/dist/data/guides/primitives/a--decorator.md +2 -28
- package/dist/data/guides/primitives/a--divider.md +1 -52
- package/dist/data/guides/primitives/a--icon.md +2 -76
- package/dist/data/guides/primitives/a--spacer.md +1 -49
- package/dist/data/guides/primitives/l--autoColumns.md +7 -54
- package/dist/data/guides/primitives/l--box.md +1 -21
- package/dist/data/guides/primitives/l--center.md +6 -39
- package/dist/data/guides/primitives/l--cluster.md +6 -26
- package/dist/data/guides/primitives/l--columns.md +7 -56
- package/dist/data/guides/primitives/l--flex.md +5 -62
- package/dist/data/guides/primitives/l--flow.md +11 -72
- package/dist/data/guides/primitives/l--frame.md +7 -78
- package/dist/data/guides/primitives/l--grid.md +5 -56
- package/dist/data/guides/primitives/l--stack.md +5 -44
- package/dist/data/guides/primitives/l--switchColumns.md +8 -53
- package/dist/data/guides/primitives/l--tileGrid.md +7 -44
- package/dist/data/guides/primitives/l--withSide.md +9 -79
- package/dist/data/guides/property-class/all-props.md +244 -0
- package/dist/data/guides/property-class/bd.md +5 -70
- package/dist/data/guides/property-class/hov.md +14 -73
- package/dist/data/guides/property-class/max-sz.md +3 -39
- package/dist/data/guides/property-class.md +31 -249
- package/dist/data/guides/references/authoring.md +246 -0
- package/dist/data/guides/references/page-sections.md +99 -0
- package/dist/data/guides/references/verification.md +73 -0
- package/dist/data/guides/responsive.md +68 -20
- package/dist/data/guides/set-class.md +2 -12
- package/dist/data/guides/tokens.md +31 -31
- package/dist/data/guides/trait-class/has--gutter.md +3 -31
- package/dist/data/guides/trait-class/has--mask.md +3 -36
- package/dist/data/guides/trait-class/has--snap.md +3 -34
- package/dist/data/guides/trait-class/has--transition.md +3 -41
- package/dist/data/guides/trait-class/is--boxLink.md +2 -63
- package/dist/data/guides/trait-class/is--container.md +2 -29
- package/dist/data/guides/trait-class/is--layer.md +1 -57
- package/dist/data/guides/trait-class/is--wrapper.md +11 -60
- package/dist/data/guides/trait-class.md +8 -8
- package/dist/data/guides/utility-class.md +1 -1
- package/dist/data/meta.js +4 -3
- package/dist/index.js +4 -1
- package/dist/lib/load-markdown.d.ts +4 -0
- package/dist/lib/load-markdown.js +10 -0
- package/dist/lib/markdown-utils.d.ts +1 -1
- package/dist/lib/response.d.ts +5 -0
- package/dist/lib/response.js +15 -2
- package/dist/lib/schemas.d.ts +35 -0
- package/dist/lib/schemas.js +13 -0
- package/dist/lib/search.d.ts +2 -0
- package/dist/lib/search.js +45 -2
- package/dist/lib/types.d.ts +5 -21
- package/dist/lib/version.d.ts +2 -0
- package/dist/lib/version.js +8 -0
- package/dist/tools/convert-css.js +38 -15
- package/dist/tools/get-component.js +2 -2
- package/dist/tools/get-guide.d.ts +2 -0
- package/dist/tools/get-guide.js +40 -17
- package/dist/tools/get-overview.js +2 -2
- package/dist/tools/get-props-system.js +8 -6
- package/dist/tools/get-tokens.js +2 -2
- package/dist/tools/search-docs.js +13 -7
- package/package.json +17 -2
|
@@ -2,12 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
アイコン要素を表示するためのクラス。`flex-shrink: 0`、デフォルトサイズ `1em`。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
- クラス名: `a--icon`
|
|
8
|
-
- コンポーネント: `<Icon>`
|
|
9
|
-
- SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/atomic/_icon.scss
|
|
10
|
-
- 公式ドキュメント: https://lism-css.com/docs/primitives/a--icon.md
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/a--icon.md
|
|
11
6
|
|
|
12
7
|
## 出力されるHTML構造
|
|
13
8
|
|
|
@@ -24,80 +19,11 @@
|
|
|
24
19
|
## 専用Props
|
|
25
20
|
|
|
26
21
|
| Prop | 説明 |
|
|
27
|
-
|
|
22
|
+
| --- | --- |
|
|
28
23
|
| `icon` | アイコンを指定。文字列(プリセット名)・オブジェクト(`{as, ...exProps}`)のどちらでも可 |
|
|
29
24
|
| `size` | プリセットアイコン使用時の `width` / `height`(通常は `fz` で指定するほうが推奨) |
|
|
30
25
|
| `label` | `aria-label` として出力。指定があれば `role="img"`、なければ `aria-hidden="true"` |
|
|
31
26
|
|
|
32
|
-
## Usage
|
|
33
|
-
|
|
34
|
-
`<Icon>` には**4つの使い方**があります。
|
|
35
|
-
|
|
36
|
-
### 1. 外部パッケージのアイコンを使う(`as` + `exProps`)
|
|
37
|
-
|
|
38
|
-
`react-icons`, `@phosphor-icons/react`, `lucide-react` などのサードパーティアイコンコンポーネントを `as` で渡すと、Lism が未処理の props は自動的にそのコンポーネントに転送されます。外部コンポーネント専用の props を明示的に分離したい場合は `exProps` を使います。
|
|
39
|
-
|
|
40
|
-
```jsx
|
|
41
|
-
import { SmileyIcon } from '@phosphor-icons/react';
|
|
42
|
-
import { Icon } from 'lism-css/react';
|
|
43
|
-
|
|
44
|
-
// 基本形
|
|
45
|
-
<Icon as={SmileyIcon} fz="2rem" />
|
|
46
|
-
|
|
47
|
-
// exProps で外部 props を明示的に分離
|
|
48
|
-
<Icon as={SmileyIcon} exProps={{ weight: 'fill', size: '3em' }} c="blue" />
|
|
49
|
-
|
|
50
|
-
// 上と同じ結果(Lism が "weight" を処理しないため最終的に SmileyIcon に渡る)
|
|
51
|
-
<Icon as={SmileyIcon} weight="fill" c="blue" />
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### 2. `as` と `exProps` を `icon` prop に一括指定
|
|
55
|
-
|
|
56
|
-
`icon={{as: Component, ...exProps}}` の形式で、`as` と `exProps` を1つのオブジェクトとしてまとめて渡せます。アイコンを選択制にする親コンポーネントを作るときに便利です。
|
|
57
|
-
|
|
58
|
-
```jsx
|
|
59
|
-
import { Home } from 'lucide-react';
|
|
60
|
-
|
|
61
|
-
<Icon icon={{ as: Home, strokeWidth: 1, size: 64 }} />
|
|
62
|
-
|
|
63
|
-
// 同じ結果(分割形式)
|
|
64
|
-
<Icon as={Home} exProps={{ strokeWidth: 1, size: 64 }} />
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
### 3. プリセットアイコンを使う
|
|
68
|
-
|
|
69
|
-
`lism-css` パッケージ内に [Phosphor Icons](https://phosphoricons.com/) ベースのプリセットアイコンが同梱されています。`icon="アイコン名"` の文字列で呼び出せます。
|
|
70
|
-
|
|
71
|
-
```jsx
|
|
72
|
-
<Icon icon="menu" />
|
|
73
|
-
<Icon icon="lightbulb" fz="2xl" c="blue" />
|
|
74
|
-
<Icon icon="warning" size="40px" />
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
プリセット一覧のエクスポート元:
|
|
78
|
-
|
|
79
|
-
```jsx
|
|
80
|
-
import { phIcons, logoIcons } from 'lism-css/react/atomic/Icon/presets';
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
### 4. SVG の `path` を直接記述する
|
|
84
|
-
|
|
85
|
-
`viewBox` を指定すると `<svg>` 要素として出力されるため、子要素に `<path>` 等をそのまま書けます。
|
|
86
|
-
|
|
87
|
-
```jsx
|
|
88
|
-
<Icon viewBox="0 0 256 256" label="Smiley icon" fz="4xl" c="blue">
|
|
89
|
-
<path d="M128,24A104,104,0,1,0,232,128..." />
|
|
90
|
-
</Icon>
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### 5. `src` で画像をアイコンとして使う
|
|
94
|
-
|
|
95
|
-
`src` を指定すると `<img>` として出力されます(厳密には4パターンに加えて画像指定も可能)。
|
|
96
|
-
|
|
97
|
-
```jsx
|
|
98
|
-
<Icon fz="4xl" src="/img/avatar01.jpg" alt="avatar" />
|
|
99
|
-
```
|
|
100
|
-
|
|
101
27
|
## 関連プリミティブ
|
|
102
28
|
|
|
103
29
|
- [a--divider](./a--divider.md) — 区切り線
|
|
@@ -2,60 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
要素間のスペースを確保するクラス。`<Spacer>` は `<Lism atomic="spacer" aria-hidden="true" />` のエイリアスとして用意されています。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
- クラス名: `a--spacer`
|
|
8
|
-
- コンポーネント: `<Spacer>`
|
|
9
|
-
- SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/atomic/_spacer.scss
|
|
10
|
-
- 公式ドキュメント: https://lism-css.com/docs/primitives/a--spacer.md
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/a--spacer.md
|
|
11
6
|
|
|
12
7
|
## 専用Props
|
|
13
8
|
|
|
14
9
|
`<Spacer>`では **`w` / `h` に対してSPACEトークンの値**が使えます(他のコンポーネントではSIZEトークンが優先されるため、スペースサイズを直感的に指定できる特殊対応)。
|
|
15
10
|
|
|
16
|
-
## Usage
|
|
17
|
-
|
|
18
|
-
### 縦方向のスペース
|
|
19
|
-
|
|
20
|
-
```jsx
|
|
21
|
-
<p>Content...</p>
|
|
22
|
-
<Spacer h="100px" />
|
|
23
|
-
<p>Content...</p>
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
```html
|
|
27
|
-
<p>Content...</p>
|
|
28
|
-
<div class="a--spacer -h" style="--h:100px" aria-hidden="true"></div>
|
|
29
|
-
<p>Content...</p>
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### SPACEトークンを使う
|
|
33
|
-
|
|
34
|
-
```jsx
|
|
35
|
-
<p>Content...</p>
|
|
36
|
-
<Spacer h="60" />
|
|
37
|
-
<p>Content...</p>
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
```html
|
|
41
|
-
<p>Content...</p>
|
|
42
|
-
<div class="a--spacer -h" style="--h:var(--s60)" aria-hidden="true"></div>
|
|
43
|
-
<p>Content...</p>
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### 横方向のスペーサー
|
|
47
|
-
|
|
48
|
-
Flex コンテナ内で `w` を指定すれば横方向のスペーサーとしても使えます。
|
|
49
|
-
|
|
50
|
-
```jsx
|
|
51
|
-
<Flex g="10">
|
|
52
|
-
<Box p="20" bd>Box</Box>
|
|
53
|
-
<Spacer w="40" />
|
|
54
|
-
<Box p="20" bd>Box</Box>
|
|
55
|
-
<Box p="20" bd>Box</Box>
|
|
56
|
-
</Flex>
|
|
57
|
-
```
|
|
58
|
-
|
|
59
11
|
## 関連プリミティブ
|
|
60
12
|
|
|
61
13
|
- [a--divider](./a--divider.md) — 区切り線
|
|
@@ -2,68 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
カラム要素が指定した幅より小さくならないように自動で折り返す、**ブレイクポイント非依存の段組みクラス**。`auto-fill` / `auto-fit` を使った流動カラムを簡潔に記述できます。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/l--autoColumns.md
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
7
|
+
## 既定の挙動
|
|
8
|
+
|
|
9
|
+
- `display:grid`。
|
|
10
|
+
- `--cols:20rem`、`--autoMode:auto-fill`を初期値にします。
|
|
11
|
+
- `grid-template-columns:repeat(var(--autoMode), minmax(min(var(--cols), 100%), 1fr))`で最小幅ベースの自動段組みを作ります。
|
|
11
12
|
|
|
12
13
|
## 専用Props
|
|
13
14
|
|
|
14
15
|
| Prop | CSS変数 | デフォルト | 説明 |
|
|
15
|
-
|
|
16
|
+
| --- | --- | --- | --- |
|
|
16
17
|
| `cols` | `--cols` | `20rem` | カラムが維持する最小幅を指定(`16em`, `320px` など) |
|
|
17
18
|
| `autoFit` | `--autoMode` | `auto-fill` | `auto-fit` モードに切り替え |
|
|
18
19
|
|
|
19
|
-
## Usage
|
|
20
|
-
|
|
21
|
-
### `--cols`でサイズを指定する
|
|
22
|
-
|
|
23
|
-
```jsx
|
|
24
|
-
<AutoColumns cols="16em" g="20">
|
|
25
|
-
<Lism as="div" p="20" bd>Item A</Lism>
|
|
26
|
-
<Lism as="div" p="20" bd>Item B</Lism>
|
|
27
|
-
<Lism as="div" p="20" bd>Item C</Lism>
|
|
28
|
-
<Lism as="div" p="20" bd>Item D</Lism>
|
|
29
|
-
</AutoColumns>
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
```html
|
|
33
|
-
<div class="l--autoColumns -g:20" style="--cols: 16em">
|
|
34
|
-
<div class="-p:20 -bd">Item A</div>
|
|
35
|
-
<div class="-p:20 -bd">Item B</div>
|
|
36
|
-
<div class="-p:20 -bd">Item C</div>
|
|
37
|
-
<div class="-p:20 -bd">Item D</div>
|
|
38
|
-
</div>
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
### `auto-fit`を使用する
|
|
42
|
-
|
|
43
|
-
`l--autoColumns` では、`grid-template-columns` の `repeat()` 関数の第一引数を `--autoMode` で指定できます(デフォルトは `auto-fill`)。`--autoMode:auto-fit`(`autoFit`)を指定することで、要素数が少ない時の挙動が変わります。
|
|
44
|
-
|
|
45
|
-
```jsx
|
|
46
|
-
<AutoColumns cols="12em" g="20" fz="s">
|
|
47
|
-
<Lism as="div" p="20" bd>auto-fill</Lism>
|
|
48
|
-
<Lism as="div" p="20" bd>auto-fill</Lism>
|
|
49
|
-
</AutoColumns>
|
|
50
|
-
<AutoColumns cols="12em" autoFit g="20" fz="s">
|
|
51
|
-
<Lism as="div" p="20" bd>auto-fit</Lism>
|
|
52
|
-
<Lism as="div" p="20" bd>auto-fit</Lism>
|
|
53
|
-
</AutoColumns>
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
```html
|
|
57
|
-
<div class="l--autoColumns -g:20 -fz:s" style="--cols:12em">
|
|
58
|
-
<div class="-p:20 -bd">auto-fill</div>
|
|
59
|
-
<div class="-p:20 -bd">auto-fill</div>
|
|
60
|
-
</div>
|
|
61
|
-
<div class="l--autoColumns -g:20 -fz:s" style="--cols:12em; --autoMode:auto-fit">
|
|
62
|
-
<div class="-p:20 -bd">auto-fit</div>
|
|
63
|
-
<div class="-p:20 -bd">auto-fit</div>
|
|
64
|
-
</div>
|
|
65
|
-
```
|
|
66
|
-
|
|
67
20
|
## 関連プリミティブ
|
|
68
21
|
|
|
69
22
|
- [l--columns](./l--columns.md) — ブレイクポイント指定の等幅カラム
|
|
@@ -2,27 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
コンテンツをグループ化するだけのシンプルなクラス。汎用的な箱として、パディング・ボーダー・背景色などの指定に使います。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
- クラス名: `l--box`
|
|
8
|
-
- コンポーネント: `<Box>`
|
|
9
|
-
- 公式ドキュメント: https://lism-css.com/docs/primitives/l--box.md
|
|
10
|
-
|
|
11
|
-
## Usage
|
|
12
|
-
|
|
13
|
-
### 基本的な使い方
|
|
14
|
-
|
|
15
|
-
```jsx
|
|
16
|
-
<Box p="30" bgc="base-2" bxsh="10" bdrs="10">
|
|
17
|
-
<p>コンテンツ...</p>
|
|
18
|
-
</Box>
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
```html
|
|
22
|
-
<div class="l--box -p:30 -bgc:base-2 -bxsh:10 -bdrs:10">
|
|
23
|
-
<p>コンテンツ...</p>
|
|
24
|
-
</div>
|
|
25
|
-
```
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/l--box.md
|
|
26
6
|
|
|
27
7
|
## 関連プリミティブ
|
|
28
8
|
|
|
@@ -2,52 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
要素を上下左右中央揃えで配置するクラス。高さの有無で水平中央のみ / 上下左右中央を自動的に切り替えます。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/l--center.md
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
7
|
+
## 既定の挙動
|
|
8
|
+
|
|
9
|
+
- `display:grid`。
|
|
10
|
+
- `place-content:center`と`place-items:center`で子要素を中央配置します。
|
|
11
|
+
- 中央配置のために`d="grid"`、`pc="center"`、`pi="center"`などを重ねる必要はありません。
|
|
11
12
|
|
|
12
13
|
## 動作の仕組み
|
|
13
14
|
|
|
14
15
|
- 高さを持たない場合: コンテンツを**水平方向のみ**中央揃え(内在的な中央寄せ。長いテキストは左寄せのまま)
|
|
15
16
|
- 高さ・アスペクト比(`h`, `min-h`, `ar` など)が設定されている場合: **垂直方向も中央揃え**
|
|
16
17
|
|
|
17
|
-
## Usage
|
|
18
|
-
|
|
19
|
-
### 水平方向に中央配置
|
|
20
|
-
|
|
21
|
-
```jsx
|
|
22
|
-
<Center bd p="30">
|
|
23
|
-
<Text fz="l">TEXT</Text>
|
|
24
|
-
</Center>
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
```html
|
|
28
|
-
<div class="l--center -bd -p:30">
|
|
29
|
-
<p class="-fz:l">TEXT</p>
|
|
30
|
-
</div>
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
### 上下左右中央に配置する
|
|
34
|
-
|
|
35
|
-
`ar` や高さを指定すると、垂直方向に対しても中央揃えになります。
|
|
36
|
-
|
|
37
|
-
```jsx
|
|
38
|
-
<Center g="10" ar="3/2" bd>
|
|
39
|
-
<Text fz="l">TEXT</Text>
|
|
40
|
-
<Text fz="s">Lorem ipsum dolor sit amet.</Text>
|
|
41
|
-
</Center>
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
```html
|
|
45
|
-
<div class="l--center -bd -g:10 -ar:3/2">
|
|
46
|
-
<p class="-fz:l">TEXT</p>
|
|
47
|
-
<p class="-fz:s">Lorem ipsum dolor sit amet.</p>
|
|
48
|
-
</div>
|
|
49
|
-
```
|
|
50
|
-
|
|
51
18
|
## 関連プリミティブ
|
|
52
19
|
|
|
53
20
|
- [l--frame](./l--frame.md) — アスペクト比付きメディアフレーム(`<Center>` と組み合わせられる)
|
|
@@ -2,34 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
複数の要素を横方向に並べ、数が多ければ自動的に折り返すクラス。タグリスト・ボタングループなどに使います。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/l--cluster.md
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
- コンポーネント: `<Cluster>`
|
|
9
|
-
- SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_cluster.scss
|
|
10
|
-
- 公式ドキュメント: https://lism-css.com/docs/primitives/l--cluster.md
|
|
7
|
+
## 既定の挙動
|
|
11
8
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
```jsx
|
|
17
|
-
<Cluster g="15">
|
|
18
|
-
<Lism bd px="10" bdrs="10">Lorem</Lism>
|
|
19
|
-
<Lism bd px="10" bdrs="10">ipsum</Lism>
|
|
20
|
-
<Lism bd px="10" bdrs="10">Dolor</Lism>
|
|
21
|
-
<Lism bd px="10" bdrs="10">Sit amet</Lism>
|
|
22
|
-
</Cluster>
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
```html
|
|
26
|
-
<div class="l--cluster -g:15">
|
|
27
|
-
<span class="-bd -px:10 -bdrs:10">Lorem</span>
|
|
28
|
-
<span class="-bd -px:10 -bdrs:10">ipsum</span>
|
|
29
|
-
<span class="-bd -px:10 -bdrs:10">Dolor</span>
|
|
30
|
-
<span class="-bd -px:10 -bdrs:10">Sit amet</span>
|
|
31
|
-
</div>
|
|
32
|
-
```
|
|
9
|
+
- `display:flex`。
|
|
10
|
+
- `flex-wrap:wrap`で折り返しを有効化済み。
|
|
11
|
+
- `align-items:center`でstretchを解除済み。
|
|
12
|
+
- `gap`は既定で持たないため、間隔は`g`/`-g:*`で指定します。通常`fxw="wrap"`や`ai="center"`は足しません。
|
|
33
13
|
|
|
34
14
|
## 関連プリミティブ
|
|
35
15
|
|
|
@@ -2,69 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
ブレイクポイントごとに指定した列数で表示できるカラムクラス。等幅の複数カラムを定義したい場合に使います。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/l--columns.md
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
7
|
+
## 既定の挙動
|
|
8
|
+
|
|
9
|
+
- `display:grid`。
|
|
10
|
+
- `--cols:2`を初期値にし、`grid-template-columns:repeat(var(--cols), minmax(0, 1fr))`で等幅列を作ります。
|
|
11
|
+
- 等幅N列は`Grid gtc="repeat(...)"`ではなく`Columns cols={...}`を優先します。
|
|
11
12
|
|
|
12
13
|
## 専用Props
|
|
13
14
|
|
|
14
15
|
| Prop | CSS変数 | 説明 | デフォルト |
|
|
15
|
-
|
|
16
|
+
| --- | --- | --- | --- |
|
|
16
17
|
| `cols` | `--cols` | 列数を指定。配列でブレイクポイント指定可 | `2` |
|
|
17
18
|
|
|
18
|
-
## Usage
|
|
19
|
-
|
|
20
|
-
### 2列レイアウト
|
|
21
|
-
|
|
22
|
-
```jsx
|
|
23
|
-
<Columns cols={2} g="20">
|
|
24
|
-
<Box bgc="base-2" p="20">Box</Box>
|
|
25
|
-
<Box bgc="base-2" p="20">Box</Box>
|
|
26
|
-
<Box bgc="base-2" p="20">Box</Box>
|
|
27
|
-
<Box bgc="base-2" p="20">Box</Box>
|
|
28
|
-
</Columns>
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
```html
|
|
32
|
-
<div class="l--columns -g:20" style="--cols: 2">
|
|
33
|
-
<div class="l--box -bgc:base-2 -p:20">Box</div>
|
|
34
|
-
<div class="l--box -bgc:base-2 -p:20">Box</div>
|
|
35
|
-
<div class="l--box -bgc:base-2 -p:20">Box</div>
|
|
36
|
-
<div class="l--box -bgc:base-2 -p:20">Box</div>
|
|
37
|
-
</div>
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### ブレイクポイント別指定
|
|
41
|
-
|
|
42
|
-
```jsx
|
|
43
|
-
<Columns cols={[1, 2, 3]} g="20">
|
|
44
|
-
<Box>Box1</Box>
|
|
45
|
-
<Box>Box2</Box>
|
|
46
|
-
<Box>Box3</Box>
|
|
47
|
-
</Columns>
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
```html
|
|
51
|
-
<div class="l--columns -cols_sm -cols_md -g:20" style="--cols: 1; --cols_sm: 2; --cols_md: 3">
|
|
52
|
-
<div class="l--box">Box1</div>
|
|
53
|
-
<div class="l--box">Box2</div>
|
|
54
|
-
<div class="l--box">Box3</div>
|
|
55
|
-
</div>
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
`null` でブレイクポイントをスキップ可:`cols={[2, null, 4]}` で「デフォルト2列、`md` から4列」になります。
|
|
59
|
-
|
|
60
|
-
### `gc`(grid-column)で子要素の横幅を個別制御
|
|
61
|
-
|
|
62
|
-
子要素側で `gc="span 2"` のように指定すると、その子だけ複数列にまたがって配置できます。`cols="6"` 等の多めの列数と組み合わせると、不揃いなブロックレイアウトを作れます。
|
|
63
|
-
|
|
64
|
-
### subgrid でカード高さ揃え
|
|
65
|
-
|
|
66
|
-
子要素を `<Grid gtr="subgrid" gr="span 4">` にすると、親 Columns の行グリッドを継承しカード内のメディア・タイトル・本文・フッタを縦方向に揃えられます。
|
|
67
|
-
|
|
68
19
|
## 関連プリミティブ
|
|
69
20
|
|
|
70
21
|
- [l--tileGrid](./l--tileGrid.md) — 列数×行数を指定する均等タイル
|
|
@@ -2,70 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
コンテンツを Flex レイアウトで配置するためのクラス。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/l--flex.md
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
- コンポーネント: `<Flex>`
|
|
9
|
-
- SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_flex.scss
|
|
10
|
-
- 公式ドキュメント: https://lism-css.com/docs/primitives/l--flex.md
|
|
7
|
+
## 既定の挙動
|
|
11
8
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
```jsx
|
|
17
|
-
<Flex>
|
|
18
|
-
<div>Item</div>
|
|
19
|
-
<div>Item</div>
|
|
20
|
-
<div>Item</div>
|
|
21
|
-
</Flex>
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
```html
|
|
25
|
-
<div class="l--flex">
|
|
26
|
-
<div>Item</div>
|
|
27
|
-
<div>Item</div>
|
|
28
|
-
<div>Item</div>
|
|
29
|
-
</div>
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### Flex プロパティの指定
|
|
33
|
-
|
|
34
|
-
Property Class や Lism Props で Flex 関連プロパティ(`g`, `fxw`, `jc`, `ai`, `fxd` など)を指定できます。レスポンシブ対応プロパティは配列・オブジェクトで指定可能。
|
|
35
|
-
|
|
36
|
-
```jsx
|
|
37
|
-
<Flex fxw="wrap" jc="center" g="20">
|
|
38
|
-
<div>Flex Content</div>
|
|
39
|
-
<div>Flex Content</div>
|
|
40
|
-
<div>Flex Content</div>
|
|
41
|
-
</Flex>
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
```html
|
|
45
|
-
<div class="l--flex -fxw:wrap -g:20 -jc:center">
|
|
46
|
-
<div>Flex Content</div>
|
|
47
|
-
<div>Flex Content</div>
|
|
48
|
-
<div>Flex Content</div>
|
|
49
|
-
</div>
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
### 子要素の Flex プロパティ
|
|
53
|
-
|
|
54
|
-
子要素側も `fx`(flex shorthand), `fxb`(flex-basis), `fxg`(flex-grow), `fxsh`(flex-shrink)などで個別制御できます。
|
|
55
|
-
|
|
56
|
-
```jsx
|
|
57
|
-
<Flex g="20">
|
|
58
|
-
<Lism fx="1">Flex Content</Lism>
|
|
59
|
-
<Lism fxb={['50%', null, '25%']}>Flex Content</Lism>
|
|
60
|
-
</Flex>
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
```html
|
|
64
|
-
<div class="l--flex -g:20">
|
|
65
|
-
<div class="-fx:1">Flex Content</div>
|
|
66
|
-
<div class="-fxb -fxb_md" style="--fxb:50%;--fxb_md:25%">Flex Content</div>
|
|
67
|
-
</div>
|
|
68
|
-
```
|
|
9
|
+
- `display:flex`。
|
|
10
|
+
- 直下の子要素に`min-width:0`を付与し、flex itemのはみ出しを抑えます。
|
|
11
|
+
- `gap`、`flex-wrap`、`align-items`、`justify-content`、`flex-direction`は既定では指定しません。必要な時だけ`g`/`fxw`/`ai`/`jc`/`fxd`で指定します。
|
|
69
12
|
|
|
70
13
|
## 関連プリミティブ
|
|
71
14
|
|
|
@@ -2,93 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
子要素間の余白を `margin-block-start` で管理するフローレイアウト。**記事コンテンツなどテキスト主体のフローレイアウト**に最適。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
- クラス名: `l--flow`
|
|
8
|
-
- コンポーネント: `<Flow>`
|
|
9
|
-
- SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_flow.scss
|
|
10
|
-
- 公式ドキュメント: https://lism-css.com/docs/primitives/l--flow.md
|
|
5
|
+
公式ドキュメント(使い方・コード例): https://lism-css.com/docs/primitives/l--flow.md
|
|
11
6
|
|
|
12
7
|
## 余白の仕組み
|
|
13
8
|
|
|
14
9
|
`l--flow` 直下の子要素は、`--flow` 変数と `margin-block-start` で間隔が管理されます。見出しタグ(`h1`〜`h6`)のみ余白が大きくなり、`calc(var(--flow) * 2 + 0.5em)` で計算されます。
|
|
15
10
|
|
|
16
11
|
| クラス | 余白量 |
|
|
17
|
-
|
|
12
|
+
| --- | --- |
|
|
18
13
|
| `l--flow` | `--flow--base`(`--s30`、`lang="ja"` 時は `--s35`) |
|
|
19
14
|
| `.l--flow.-flow:s` | `--flow--s`(`--s20`) |
|
|
20
15
|
| `.l--flow.-flow:` | `--flow` を直接指定した値 |
|
|
21
16
|
|
|
22
17
|
`--flow--base` / `--flow--s` は `:root` で定義されたトークン([tokens](../tokens.md#フロー余白-flow) 参照)。日本語環境では文字密度に合わせて `--flow--base` が広めに上書きされる。
|
|
23
18
|
|
|
24
|
-
##
|
|
25
|
-
|
|
26
|
-
| Prop | 説明 |
|
|
27
|
-
|------|------|
|
|
28
|
-
| `flow` | `--flow` の値を指定。`s` / `l` などのトークン値を渡すと `-flow:{value}` クラスが付与、任意値を渡すと `-flow:` + `style="--flow:..."` が出力される |
|
|
29
|
-
|
|
30
|
-
## Usage
|
|
31
|
-
|
|
32
|
-
### 基本的な使い方
|
|
33
|
-
|
|
34
|
-
```jsx
|
|
35
|
-
<Flow>
|
|
36
|
-
<p>本文1...</p>
|
|
37
|
-
<p>本文2...</p>
|
|
38
|
-
<h2>Heading 2</h2>
|
|
39
|
-
<p>本文3...</p>
|
|
40
|
-
<ul>
|
|
41
|
-
<li>リスト項目1</li>
|
|
42
|
-
<li>リスト項目2</li>
|
|
43
|
-
</ul>
|
|
44
|
-
</Flow>
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
```html
|
|
48
|
-
<div class="l--flow">
|
|
49
|
-
<p>本文1...</p>
|
|
50
|
-
<p>本文2...</p>
|
|
51
|
-
<h2>Heading 2</h2>
|
|
52
|
-
<p>本文3...</p>
|
|
53
|
-
<ul>...</ul>
|
|
54
|
-
</div>
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### 余白量をトークンで変える(`flow="s"`)
|
|
19
|
+
## 既定の挙動
|
|
58
20
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
<p>本文...</p>
|
|
64
|
-
</Flow>
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
```html
|
|
68
|
-
<div class="l--flow -flow:s">
|
|
69
|
-
<p>本文...</p>
|
|
70
|
-
<h2>Heading</h2>
|
|
71
|
-
<p>本文...</p>
|
|
72
|
-
</div>
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
### 任意の値を指定する
|
|
76
|
-
|
|
77
|
-
トークン値以外を `flow` に渡すと、`-flow:` クラスと `--flow` CSS変数で出力されます。
|
|
21
|
+
- `display:flow-root`。
|
|
22
|
+
- 直下の`* + *`へ`margin-block-start:var(--flow)`を付与し、`--flow`は`--flow--base`を初期値にします。
|
|
23
|
+
- 直下の見出しは上余白を広めにし、先頭要素と`is--skipFlow + *`は余白を打ち消します。
|
|
24
|
+
- 直下の`img`/`video`/`iframe`は`display:block`へ初期化します。
|
|
78
25
|
|
|
79
|
-
|
|
80
|
-
<Flow flow="10px">
|
|
81
|
-
<p>本文...</p>
|
|
82
|
-
<p>本文...</p>
|
|
83
|
-
</Flow>
|
|
84
|
-
```
|
|
26
|
+
## 専用Props
|
|
85
27
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
<p>本文...</p>
|
|
90
|
-
</div>
|
|
91
|
-
```
|
|
28
|
+
| Prop | 説明 |
|
|
29
|
+
| --- | --- |
|
|
30
|
+
| `flow` | `--flow` の値を指定。トークン値 `s` を渡すと `-flow:s` クラスが付与、任意値を渡すと `-flow:` + `style="--flow:..."` が出力される |
|
|
92
31
|
|
|
93
32
|
## `is--skipFlow`
|
|
94
33
|
|