Aを考慮してください<card></card>
成分。間隔なしで他のコンポーネントに直接隣接してはなりません。これは、ほぼすべてのコンポーネントに適用されます。それでは、設計システム内でコンポーネント間隔をどのように管理する必要がありますか?
間隔を直接適用する必要があります<card></card>
マージンを使用(例: margin-block-end: 1rem; margin-inline-end: 1rem;
)?これは、カードの配置のコンテキストを想定しているため問題です。カードが内にネストされている場合はどうなりますか<grid></grid>
component that already uses gap: 1rem
?これにより、競合とハードコーディングされた間隔値が作成されます。
それぞれがトレードオフを持ついくつかのアプローチが存在します:
<card space="xxl"></card>
)。これは冗長になる可能性があり、異なる方向に複数の小道具を必要とする可能性があります。<spacer></spacer>
または<layout></layout>
間隔のみ。これは懸念をきれいに分離しますが、不必要なDOM要素と複雑さを追加できます。最適な解決策は議論の問題です。マージンを完全に排除することを提唱する人もいますが、より実用的なアプローチは、コアコンポーネント機能とレイアウトと間隔の懸念を分離することです。コンテンツコンポーネントは、配置に不可知論される必要があり、高レベルのレイアウトメカニズムが間隔を処理できるようにします。
FlexBoxとグリッドのgap
の採用の増加は、マージンのみに依存することから離れることを示唆しています。この傾向は、より宣言的で保守可能なレイアウトを望む欲求と一致しています。
以上が設計システムのコンポーネント間隔の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。