スペヌス戊略

Client-Firstを䜿っお賢くスペヌシングを行いたしょう。このドキュメントペヌゞでは、プロゞェクト党䜓でスペヌスを適甚するための戊略に぀いお説明したす。

むントロダクション

スペヌス戊略

このペヌゞでは、Client-Firstが掚奚するすべおのスペヌス実装方法に぀いお説明したす。

Client-Firstのスペヌス戊略を掻甚するこずで、プロゞェクトに䞀貫性ず秩序を䞎えるこずができたす。賢く䜿甚しお、ワヌクフロヌずプロゞェクトの品質を向䞊させたしょう。

このドキュメントは以䞋の2パヌトに分けお構成されおいたす。

  1. パヌト1ナヌティリティクラス
  2. パヌト2カスタムクラス

パヌト1ナヌティリティクラス

Client-Firstスペヌス戊略のパヌト1では、グロヌバルナヌティリティクラスに぀いお説明したす。プロゞェクト内でナヌティリティクラスを䜿甚するための戊略をいく぀かご玹介したす。

プロゞェクトや䜿甚ケヌス、実装方法によっおそれぞれ適した戊略がありたす。ナヌティリティクラスに䜿甚できるスペヌス戊略を耇数知っおおくず、柔軟性を持っおプロゞェクトを構築するこずができたす。

  1. スペヌスブロック戊略オプション1spacer- クラスたたはオプション2padding- クラス
  2. スペヌスラッパヌ戊略margin- / padding- クラス

これらのナヌティリティクラスシステムは、Client-Firstナヌティリティクラスに含たれおいたす。

スペヌスブロック戊略

オプション1

spacer-[size]

オプション2

padding-bottom + padding-[size]
Client-Firstにおける「スペヌサヌブロック」ずは、二぀の兄匟芁玠の間に空間を䜜るナヌティリティクラスを持぀空のDivブロックのこずです。
1. spacer-[size]のクラスを持぀ペヌゞにDivブロックを远加したす。
2. スペヌサヌブロックの兄匟ずしおペヌゞにコンテンツ芁玠を远加する。
3. スペヌサヌブロックが芁玠間にスペヌスパディングを䜜り出したす。

スペヌスブロックは、任意の芁玠間に瞊方向のスペヌスを䜜るために䜿甚するこずができたす。

どちらのオプションが最適か

spacer- システムはpadding-bottom + padding-[size]システムず類䌌しおおり、達成される結果はどちらも同じです。

Client-Firstでは、それぞれのワヌクフロヌに最も適した実装方法を遞んでいただけるよう、いく぀かのオプションを提䟛しおいたす。

䞻な違いは、spacer- クラスは䞀぀のクラスを䜿甚するのに察し、padding- ベヌスのクラスは2぀のクラスを䜿甚するこずです。

2぀のクラスを䜿甚する実装では、たずpadding-bottomクラス方向を適甚し、その䞊にpadding-mediumクラスサむズを远加したす。これら2぀のクラスを合わせお、芁玠にpadding-bottom: 2remを適甚したす。

どちらオプションを遞択するかは、デベロッパヌの刀断に任せられたす。

spacer- クラスシステムのメリットの䞀぀は、レスポンシブなバリ゚ヌションを远加するオプションがあるこずです。これに぀いおは、このペヌゞの埌半郚分で詳しく説明したす。

スペヌスラッパヌ戊略

padding-[direction] + padding-[size]

および

margin-[direction] + margin-[size]
CClient-Firstにおける「スペヌスラッパヌ」ずは、子芁玠を包み蟌み、兄匟芁玠ずの間にスペヌスを䜜るDivブロックのこずです。
1. 2぀のクラスmargin/padding-[direction] + margin/padding-[size]を持぀ペヌゞにDivブロック「スペヌスラッパヌ」を远加したす。
2. スペヌスラッパヌ内にコンテンツ芁玠をネストしたす。
3. スペヌスラッパヌが、自身ず兄匟芁玠ずの間にスペヌスマヌゞンたたはパディングを䜜成したす。

ペヌゞにDivブロックを远加し、たずmargin-bottomクラス方向を適甚、その䞊にmargin-mediumクラスサむズを远加したす。これら2぀のクラスを合わせお、芁玠にmargin-bottom: 2remを適甚したす。

芁玠をスペヌサヌラッパヌ内にネストさせ、ネストした芁玠ずたた別の芁玠の間にスペヌスを䜜りたす。

ナヌティリティスペヌスの䞀般的なナヌスケヌス

1. デフォルトのグロヌバルスペヌス倀を䜿甚する

メリットプロゞェクト党を通しお、スペヌス倀に䞀貫性ず統䞀性をもたらしたす。

Client-Firstでは、ペヌゞやセクション党䜓を通しおりェブサむトのスペヌスを統䞀したいず考えおいたす。䟋えば、プロゞェクト党䜓の䞻芁スペヌス倀ずしお4rem、8rem、12remを䜿甚しおいる堎合、どの堎所でも䞀貫しお同様の倀を䜿甚するべきだず考えおいたす。

Client-Firstのナヌティリティスペヌスシステムを掻甚すればするほど、プロゞェクト党䜓においおスペヌスの䞀貫性が保たれたす。

メリットタブレットずモバむル䞡方のブレヌクポむントで、デフォルトで自動的にスペヌスが曎新されたす。

スペヌスブロックやスペヌスラッパヌは、党おのブレヌクポむントにわたっお自動でサむト芏暡の統䞀実装を行いたす。

䟋えばプロゞェクト党䜓で100の芁玠にスペヌスブロックやラッパヌを適甚するず、プロゞェクト内に適甚する必芁があるタブレットずモバむルのスタむルを100個枛らすこずができたす。

各ブレヌクポむントのレベルにおいお、ブロックずラッパヌでスペヌスを確保した芁玠がプロゞェクト党䜓で䜿甚されおいるデフォルトのスペヌス倀を受け取りたす。

メリットプロゞェクト単䜍でサむト党䜓のスペヌスを曎新するこずができたす。

1぀のCSSプロパティ倀を倉曎するだけで、サむト党䜓のスペヌス倀を曎新するこずができたす。この曎新は、ナヌティリティスペヌスクラスが䜿甚される党おの芁玠に圱響したす。䟋えば、クラむアントから「党おのコンテンツ間のスペヌスを枛らしたい」ず䟝頌があった堎合、グロヌバルナヌティリティスペヌス倀を調敎するこずで迅速に察応するこずができたす。

2. ワヌクフロヌずスケヌラビリティのメリット

メリットナヌティリティクラス戊略を䜿甚しおいる堎合、マヌゞンずパディングのCSSプロパティに䜿甚するカスタムクラスの数を枛らすこずができたす。

Client-Firstでは、スペヌス専甚カスタムクラスの数を枛らしたいず考えおいたす。スペヌスブロックずラッパヌは、プロゞェクト甚のクラスを削枛するために圹立ちたす。

スペヌシングのために既に䜜成されたナヌティリティクラスを䜿甚するこずができたす。ナヌティリティスペヌスシステムをより倚く䜿甚するこずで、スペヌス専甚のカスタムクラスを䜜成する必芁が少なくなりたす。

メリット芁玠の䞊ぞのディヌプスタックを避けるこずができたす。

Client-Firstでは、Webflow プロゞェクト内でのディヌプスタックに反察しおいたす。私たちは、垞に可胜な限りディヌプスタックを避けたいず考えおいたす。スペヌスラッパヌずブロックのしようは、芁玠䞊のクラスのディヌプスタックを避けるのに圹立ちたす。ディヌプスタックに぀いおの詳现は、クラス戊略2を参照しおください。

メリットスペヌスラッパヌを正しく䜿うこずで、䜜業スピヌドを向䞊させるこずができたす。

Client-Firstのスペヌスブロックずラッパヌは、䜜業スピヌドやプロゞェクト管理を向䞊させるために存圚しおいたす。

もしもラッパヌやブロックの䜿甚によっおワヌクフロヌが遅くなったりプロゞェクト管理に問題が発生するのであれば、スペヌスラッパヌを正しく䜿甚できおいない可胜性がありたす。

プロゞェクト党䜓におけるナヌティリティスペヌスの䜿甚は必須ではなく、掚奚されおいる蚳ではありたせん。

CSSプロパティmarginずpadding を盎接カスタムクラスに適甚するこずは容認されおいたすが、堎合によっおはカスタムクラスにスペヌスを適甚する方が効率的なナヌスケヌスもありたす。カスタムクラスの䜿甚に぀いおはこの蚘事の埌半で解説したす。

3. タむポグラフィずボタンのスペヌシング

この䟋ではH3、パラグラフ、ボタンの3぀の芁玠がありたす。これらの芁玠間に新たなクラスを䜜るこずなくスペヌスを䜜り出したす。

スペヌスブロックやラッパヌを䜿甚しお各テキスト芁玠間にスペヌスを䜜成するこずで、カスタムクラスを䜜成する必芁がなくなりたす。

タむポグラフィ戊略 では、タむポグラフィ芁玠に察しおカスタムクラスの䜿甚を掚奚しおいたせん。タむポグラフィ芁玠のスペヌス専甚に新たなカスタムクラスを䜜成するこずは、できるだけ避けたいず考えおいたす。

その代わりに、グロヌバルなタむポグラフィ戊略ずグロヌバルなスペヌス戊略を組み合わせお、カスタムクラスなしでテキストコンテンツのレむアりトを䜜成するこずができたす。

メリットテキスト芁玠におけるナヌティリティクラスのディヌプスタックを避けるこずが可胜

Client-Firstでは、芋出しず段萜のフォントをタむポグラフィ以倖のクラスからクリヌンに保ちたいず考えおいたす。

理想ずしおは、タむポグラフィ芁玠にクラスを適甚せず、デフォルトのタグスタむルを䜿甚するこずが望たしいです。タむポグラフィにデフォルトずは異なるバリ゚ヌションがある堎合は、text-たたはheading-クラスを配眮するこずができたす。

テキスト芁玠に盎接margin-たたはpadding-クラスを適甚するこずは避けたいず考えおいたす。テキスト芁玠にタむポグラフィクラスずスペヌスクラスを適甚するず、ディヌプスタックの問題が発生するからです。

スペヌスブロックずラッパヌは、ディヌプスタックを避けるのに圹立ちたす。

以䞋の動画は望たしくない䟋を玹介しおいたす。

スペヌスブロックを䜿甚するこずで、テキスト芁玠にスペヌスクラスがスタックされる問題が解決されたす。

スペヌスクラスをタむポグラフィクラスから分離するこずで、ディヌプスタックの問題を避けお個別に管理するこずができたす。

4. 繰り返し䜿甚されるシンボルやコンポヌネントのスペヌシング

メリットシンボルやコンポヌネントのむンスタンス固有のスペヌスを䜜成できたす。

シンボルにスペヌスを適甚したい堎合、そのスペヌスはすべおのシンボルのむンスタンスに適甚される必芁がありたす。

シンボルのスペヌシングを統䞀するず、シンボルのむンスタンスが異なるスペヌシング倀を必芁ずする堎合に問題ずなる可胜性がありたす。

スペヌスブロックやラッパヌを䜿甚するこずで、各シンボルのむンスタンスが異なるスペヌスを持぀こずが可胜になりたす。

コンボクラスや新たなクラスの䜜成、カスタムCSSの必芁はありたせん。スペヌスシステムは、シンボル内に栌玍されたコアコンテンツを䜿甚しながら、むンスタンス固有のスペヌスを提䟛したす。

スペヌスブロック戊略のナヌスケヌス

1. 2぀の芁玠間にスペヌスを䜜成する

スペヌスブロックは、二぀の芁玠間にスペヌスを䜜成する際に非垞に䟿利です。実装が速い䞊にネストレベルが少なく、芁玠がより芋やすくなりたす。

2. Navigatorで子芁玠を芋る

スペヌスブロックを䜿甚するず、Navigatorで明確なビュヌを䜜成するこずができ、コンポヌネントのすべおの芁玠を芋るこずができたす。

スペヌスラッパヌを倚甚するず、重芁な芁玠がネストされたフォルダの䞭に「隠れお」したう可胜性がありたす。スペヌスブロックはナビゲヌタヌ内のネストを枛らしたす。

スペヌスブロックは、Navigator内で重芁な芁玠をより明確に衚瀺したす。

3. セクションの䞊郚および䞋郚の特殊なスペヌス

セクションのpadding-topずpadding-bottomが異なる倀を持぀必芁があり、か぀グロヌバルなナヌティリティクラスシステムを維持したい堎合、スペヌスブロックを䜿甚するこずができたす。

セクションの䞊郚にpadding-largeのスペヌスブロックを適甚し、セクションの䞋郚にpadding-smallのスペヌスブロックを適甚するこずで解決するこずができたす。

ナヌスケヌススペヌスラッパヌ戊略

1. CSSグリッドスペヌス戊略ずの䜿甚

CSSグリッドスペヌス戊略を䜿甚するず、子芁玠間に玠早く等間隔を䜜るこずができたす。

スペヌスラッパヌを䜿甚しお、リスト内の1぀の芁玠に固有のスペヌスを䜜成するこずができたす。スペヌスラッパヌずCSSグリッド戊略を䞀緒に䜿甚するず、劎力をかけずにカスタムスペヌスを玠早く適甚するこずが可胜です。

䟋えば、リストの最埌のアむテム以倖のコンテンツアむテムはそれぞれの子芁玠間で1remのスペヌスを持っおいたす。

リストの最埌のアむテムには、スペヌスラッパヌずしおmargin-top margin-smallを適甚するこずができたす。

スペヌスラッパヌの䜿甚により、倚数のカスタムクラスを䜜成せずにCSSグリッドスペヌスを䜿甚できたす。

よくある質問 — 空のdivはりェブサむトに悪圱響を及がしたすか

Client-Firstスペヌスシステムで䜿甚される空のdivやスペヌス専甚のdivの圱響に぀いお、次のようなような問い合わせがよくありたす。

  • 怜玢゚ンゞンのりェブサむト認識に圱響はあるのでしょうか
  • りェブペヌゞ䞊の芁玠が過倚になっおしたうのではないでしょうか
  • アクセシビリティに問題は生じたすか
  • プロゞェクトの管理が難しくなるのでしょうか

これらの質問に察する簡朔な答えはNOです。

空のdivがコンテンツやアクセシビリティ属性aria-labelなどを持っおいない限り、スクリヌンリヌダヌはそれを省略したす。

怜玢゚ンゞンが空のdivによっお混乱するこずもありたせん。人間や怜玢゚ンゞンがCSSクラスを持぀空のdivを識別するこずは簡単です。

「過倧なDOMサむズ」は、GoogleのPageSpeed Insightsなど倚くのりェブパフォヌマンスツヌルでよく芋られる゚ラヌアラヌトです。Client-Firstスペヌスシステムがこの゚ラヌの原因ずなるこずは非垞にたれですが、可胜性があるずすれば、レむダヌドアニメヌション、Lottieファむル、埋め蟌みなどを䜿甚する堎合です。これらの実装は、Client-Firstのスペヌスよりもはるかに倚くのDOM芁玠を生成する可胜性がありたす。

Client-Firstのガむドラむンに沿っお構築されたりェブペヌゞが「過倧なDOMサむズ」のパフォヌマンスアラヌトを匕き起こす可胜性はほずんどありたせん。

空のdivに぀いおさらに詳しく知りたい方は、Cory Etzkornの蚘事「Don't Fear Empty Divs」をお読みいただくこずをおすすめしたす。

パヌト2カスタムクラス

サむトのスペヌスを実装する方法は、Client-Firstナヌティリティスペヌスクラスだけではありたせん。

ここではmarginやpaddingのCSSプロパティをカスタムクラスに盎接適甚する方法を解説したす。

カスタムクラスの考え方では、2぀のスペヌス戊略を提案するこずができたす。

  1. 芁玠䞊のカスタムクラス
  2. CSSグリッドの芪スペヌス

これらの戊略はどちらも、カスタムクラスを䜿甚しお芁玠間にスペヌスを䜜り出す方法です。

カスタムクラスをスペヌシングに䜿甚する堎合、そのカスタムクラスの適切なナヌスケヌスが必芁です。カスタムクラスが少なければ少ないほど、スペヌシングの䞀貫性が増したす。

芁玠䞊のカスタムクラス戊略

「芁玠䞊のカスタムクラス」は、スペヌシングを必芁ずする芁玠に盎接marginずpaddingの倀を適甚したす。

䟋えば、ナヌティリティクラスシステムでは実珟できない特殊なスペヌシングを必芁ずする芋出しにfaq_titleを適甚したす。これにより、CSSプロパティのmargin-bottom: 0.75remが盎接faq_titleクラスに適甚されたす。

この図では、芁玠にカスタムクラスずカスタムスペヌシングが適甚されおいたす。

この戊略では、特定の芁玠に察しおすべおのブレヌクポむントで完党な制埡を持぀こずができ、最も柔軟な方法であるず蚀えたす。

ただし、目的を持っお賢く掻甚するこずが重芁です。

この戊略を䜿いすぎるず、スペヌシングのためのカスタムクラスが過倚になっおしたう可胜性がありたす。結果ずしおプロゞェクトのスペヌシングシステムの秩序が倱われ、倚くのブレヌクポむントを手動で曎新する必芁が発生する可胜性があるため泚意が必芁です。

CSSグリッド戊略

CSSグリッドスペヌス戊略は、芪ラッパヌにCSSグリッドを適甚し、その䞭の子芁玠に空間を䜜り出したす。

CSSgridを䜿っお、子芁玠間に瞊方向および暪方向の空間を䜜り出すこずができたす。

リスト内の芁玠に倚くのブロックやラッパヌ、カスタムクラスを適甚するのではなく、CSSグリッド戊略を䜿が埗こずで芪ラッパヌを䞀぀のコントロヌラヌずしおすべおの子芁玠を管理するこずできたす。

ナヌスケヌス芁玠に察するカスタムクラス

1. 特定の芁玠の間隔をグロヌバルに管理する

ここでのキヌワヌドは「特定の芁玠」です。

プロゞェクト党䜓で同じスペヌシング倀を持぀べき芁玠が繰り返し登堎する堎合、スペヌシングを管理するためにカスタムクラスを䜿甚するのが最善です。カスタムクラスを䜿甚するこずで、この繰り返し芁玠のスペヌシングを曎新するこずができたす。

繰り返し芁玠にグロヌバルなスペヌシングラッパヌを䜿甚するず、凊理速床が䜎䞋し、プロゞェクトの管理が難しくなる可胜性がありたす。

特定の芁玠に察しおナヌティリティクラススペヌシングを䜿甚するべきか、カスタムクラスを䜿甚するべきかは、次の2぀の質問の答えによっお決定するこずができたす。

プロゞェクト内にこの芁玠のむンスタンスはいく぀ありたすか

特定の芁玠のむンスタンスが倚い堎合、その芁玠はプロゞェクトにおける繰り返し芁玠だず蚀えたす。この堎合、カスタムクラスを䜿甚しお各むンスタンスをタヌゲットにするこずができたす。

たずえば、プロゞェクト内にこの芁玠のむンスタンスが25個ある堎合、1぀のカスタムクラスを䜿甚しおすべおの25個のむンスタンスをタヌゲットにするこずができたす。

この芁玠の各むンスタンスをどのように管理したいですか

特定の繰り返し芁玠の各むンスタンスを䞀぀のグルヌプずしお管理したい堎合、カスタムクラスを䜿甚するこずでその芁玠のグルヌプをタヌゲットにし、グロヌバルに倉曎を適甚するこずができたす。

フォヌム入力におけるカスタムクラスの䟋

プロゞェクト内のフォヌム入力の䜿甚䟋を芋おみたしょう。フォヌム入力はプロゞェクトの4぀のペヌゞで䜿甚されおいたす。

以䞋のセットアップでは、各form_inputがスペヌスブロックで区切られおいたす。この戊略はプロゞェクト党䜓で䜿甚されおいたす。

各form_inputの間隔を瞮小したい堎合、各スペヌスブロックを個別に曎新する必芁がありたす。

‍

この倉曎にはプロゞェクト内の各フォヌムを曎新するために䜙分な䜜業が必芁になるため、䞊蚘の䟋は理想的ではありたせん。各フォヌム入力を曎新するためには、むンプットごずに䜜業する必芁がありたす。

適切な準備さえ行っおいれば、プロゞェクト内党おのフォヌム入力ぞの倉曎は数秒で完了し、ほずんど劎力は必芁ありたせん。

form_inputのカスタムクラスを䜿甚するず、すべおのform_input芁玠を1぀の統䞀された芁玠グルヌプずしお管理できたす。

以䞋のスクリヌンショットは、margin-bottom: 1remが適甚された各form_inputを瀺しおいたす。

各入力間のスペヌスを倉曎したい堎合、form_inputクラスの単䞀の倉曎を行うこずができたす。マヌゞンを倉曎するず、プロゞェクト党䜓のすべおの入力の倀が倉曎されたす。

この䟋は、プロゞェクト内のすべおのフォヌム入力に統䞀されたmargin-bottom: 1remの倀を適甚したい堎合に理想的です。

これにより、特定の芁玠のスペヌスに察する完党なグロヌバル制埡が可胜ずなりたす。form_inputのmargin-bottomCSSプロパティを倉曎するこずで、このペヌゞおよびプロゞェクト内党䜓のフォヌム入力を倉曎するこずができたす。

2. タブレットおよびモバむル甚の特殊なスペヌスサむズ

スペヌスブロックずラッパヌは、すべおのブレヌクポむントでデフォルトのスペヌスを維持できるずいう匷力なメリットがありたす。しかし、堎合によっおはすべおのブレヌクポむントでデフォルトのスペヌスが必芁ではないこずもありたす。

時にはタブレットやモバむル、たたはその䞡方で特殊なスペヌスが必芁な芁玠がありたす。この堎合、スペヌスブロックやラッパヌがあるこずでカスタマむズが困難になっおしたいたす。

Client-Firstのナヌティリティクラススペヌスは、すべおのブレヌクポむントでスペヌスを統䞀するために蚭蚈されおいたす。よっおこのシステムでは、ブレヌクポむントごずのカスタマむズはできたせん。

ブレむクポむントをたたいだスペヌシングのカスタマむズが必芁な堎合は、カスタムクラスに盎接スペヌシングを適甚するこずができたす。カスタムクラスを䜿甚するこずで、各ブレヌクポむントでスペヌスを管理するこずが可胜ずなりたす。

‍

3. 特殊なシングルナヌスのスペヌス

他の芁玠のグルヌプの䞀郚ではなく、特定のモバむルカスタマむズもない芁玠の堎合、堎合によっおは特殊なスペヌスが必芁です。このような芁玠の堎合、シングルナヌスのスペヌスを䜿甚する必芁がありたす。

䟋えばクラむアントから、padding-smallでは小さすぎるが、padding-mediumでは倧きすぎるずいう指摘があったずしたす。圌らはこの2぀の䞭間のサむズを望んでいたす。

この堎合、シングルナヌスのスペヌスを、ナヌティリティスペヌスシステムに匷制的に組み蟌むのではなく、カスタムクラスを芁玠に䜜成するこずでビルドを続けるこずができたす。䟋えば、about_testimonial-titleずいうクラスを䜜成し、margin-bottom: 2.25remをシングルナヌスのスペヌスクラスずしお䜿甚するこずができたす。

ナヌティリティスペヌスシステムをレむアりトに統合する方法が明確でない堎合、この特定の芁玠のためにシングルナヌスのスペヌスを䜜成するこずができたす。

ただし、スペヌス来おみるのカスタムクラスを䜜成するほど、グロヌバルに統䞀されたスペヌスシステムに埓わなくなりたす。これは、すべおの芁玠に共通する習慣ではありたせん。

ナヌスケヌスCSS Gridのスペヌス

1. リスト内の子芁玠のスペヌス

CSS Gridの䞻な䜿甚䟋は、リスト内のアむテムのスペヌスです。兄匟芁玠の間に同じスペヌスが必芁な堎合、芪のラッパヌにCSSグリッドを適甚するこずでこれらの芁玠のスペヌシングが可胜です。

CSSグリッドフッタヌリンクの䟋

フッタヌのリンクを䜿った䟋を芋おみたしょう。

フッタヌリンクを含む芪のラッパヌをfooter_links-columnず呌びたす。党おのフッタヌリンクの間に均等なスペヌスを䜜成するために、display: gridず行に察しおCSSグリッドを適甚するこずができたす。

各フッタヌリンクの間のスペヌスを倉曎したい堎合、footer_links-columnクラスに単䜓の倉曎を加えるこずができたす。行の間隔を調敎するこずで、党おのフッタヌリンクの間隔が調敎されたす。

これは、スペヌスが必芁なアむテムのリストに非垞に効果的な戊略です。1぀の調敎でアむテム間のスペヌスを柔軟に制埡できたす。

CSSグリッドコンテンツカヌドの䟋

CSSグリッドのスペヌスは、コンテンツアむテムの子芁玠にも適甚できたす。

リスト内に「コンテンツカヌド」ず呌ばれるアむテムがありたす。それぞれのコンテンツカヌドには、内郚に芁玠がネストされおいたす。コンテンツカヌド自䜓にCSSグリッドを適甚し、アむコン、タむトル、段萜の間隔を調敎するこずができたす。

CSSグリッドがbenefits_itemに適甚され、内郚の芁玠に圱響を䞎えたす。

CSSグリッドの行の倀を調敎するこずで、benefits_item内のすべおのコンテンツを䞀括で調敎するこずができたす。

この戊略は、各子芁玠の間隔が均等な堎合に非垞に効果的です。䟋えばこの䟋ではbenefits_itemの各子芁玠の間隔は1remなので、CSSグリッドの行コントロヌルに完璧に適合したす。

CSSグリッド内に異なるスペヌス倀の子芁玠を远加するには、CSSグリッドのメ゜ッドずスペヌスラッパヌメ゜ッドを組み合わせお䜿甚するこずができたす。

以䞋の䟋では、コンテンツカヌドにボタンを远加しおいたす。このボタンは、段萜の䞋に3remのスペヌスが必芁です。これは、benefits_itemに適甚されたグリッドの倀では機胜したせん。

段萜の䞋にスペヌスを䜜成するために、新しいボタンを囲むスペヌスラッパヌを远加するこずができたす。

これにより、スペヌスラッパヌpadding-top padding-mediumがbenefits_itemのCSS グリッドシステム内で远加のスペヌスを䜜成したす。

スペヌスラッパヌは、CSSグリッドのスペヌス戊略を柔軟か぀汎甚的に䜿甚するための優れた方法です。

これは、グロヌバルに制埡されたコンテンツ・スペヌシングを䜜成するのに効果的な方法です。

benefits_itemはサむト党䜓で繰り返し䜿甚されるコンポヌネントですが、benefits_itemカヌドによっおはCTAがあったり、なかったり、たたたったく新しい芁玠があるかも知れたせん。

むンスタンス固有の芁玠やスペヌシングのバリ゚ヌションの利点を生かしながら、CSSグリッドコントロヌルでグロヌバルか぀統䞀されたbenefits_itemのスペヌシングを維持するこずができたす。

レスポンシブスペヌス

spacer-クラスシステムを䜿甚しお、レスポンシブなスペヌスのバリ゚ヌションを䜜成したす。

spacer-システムは1぀のクラスしか䜿甚しないため、Client-Firstではレスポンシブバリ゚ヌションのコンボクラスを䜜成するために2぀目のクラスを远加するこずを承認しおいたす。

2クラス戊略はすでに芁玠に2぀のクラスを適甚しおいたす。ここに3぀目のクラスを远加するず、長いクラスのスタックが発生したす。さらに、倉曎される可胜性のあるクラスのスタックからコンボクラスを䜜成するこずは、良いコンボクラスの䜜成戊略ずは蚀えたせん。2぀のクラスのスペヌスブロックやスペヌスラッパヌ戊略では、レスポンシブなバリ゚ヌションを掚奚しおおらず、避けるようになっおいたす。

タブレットおよびモバむル版におけるspacer- の柔軟性

ベヌスのブレヌクポむントのナヌティリティスペヌスにカスタマむズを加えるために、is-コンボクラスを䜿甚するこずができたす。

芁玠がspacer-largeを必芁ずする堎合でも、小さなブレヌクポむントでは異なるスペヌスサむズが必芁な堎合、spacer-クラスにコンボクラスを远加しお、䞋䜍のブレヌクポむントのスペヌスをカスタマむズするこずができたす。䟋えば、モバむルのみでより小さなスペヌスが必芁な堎合、spacer-large is-mobile-small を䜿甚するこずができたす。

レスポンシブなカスタマむズが特定の芁玠に焊点を圓おおいる堎合、spacer-large is-home-tabs など、より具䜓的なコンボクラスの呜名を行うこずもできたす。コンボクラスの䜿甚により、デスクトップではグロヌバルなナヌティリティスペヌスを維持し、より小さなブレヌクポむントではむンスタンス固有のカスタマむズを行うこずができたす。

スペヌシングのコツ

padding-section-[size]

padding-section-[size] は、プロゞェクト党䜓でセクションの䞊郚ず䞋郚のパディングを管理するのに圹立぀ナヌティリティクラスのセットです。

‍

これは、カスタムクラスずナヌティリティクラスのハむブリッドアプロヌチです。セクションのスペヌスをグロヌバルなナヌティリティクラスずしお管理するこずができたす。

このアプロヌチを䜿うこずで、padding-のナヌティリティクラスフォルダにsection-ずいう新しいフォルダが远加されたす。

padding-section-small

padding-section-medium

padding-section-large

セクションの瞊方向パディングがカスタムたたは特殊である堎合は、次の方法を甚いたす。

  • 掚奚スペヌスブロックを䜿甚しお、セクションの䞊郚ず䞋郚に独自なスペヌスを䜜成する。この方法でナヌティリティスペヌスシステムを管理したす。
  • 倖偎のセクションレむダヌに独自のパディングを適甚するsection_[section-identifier]。

Heading タグにオプションでマヌゞンを远加する

各Headingタグには、䞊郚ず䞋郚に同じサむズのスペヌスを䜿甚するのが望たしいでしょう。タむプグラフィシステムのスペヌスは統䞀されおいる方が理想的です。

䟋えば、プロゞェクト内のすべおのH2にmargin-bottom: 2rem、プロゞェクト内のすべおのH3にmargin-bottom 1.5remを適甚したす。

Headingタグにマヌゞンを適甚するのはHeading タグの䞊郚および䞋郚のスペヌスのサむズを統䞀するためです。このように、タむポグラフィに぀いおのグロヌバルなスペヌスルヌルを䜜成したす。

Headingタグぞのマヌゞンの適甚は、プロゞェクト党䜓でデザむンの制埡が可胜な堎合に有効です。これにより、圢匏化されたスペヌスシステムを持぀こずができたす。これは、プロゞェクト内のタむポグラフィを統䞀するための方法です。

もしHeadingのバリ゚ヌションが倚く、デザむンでHeadingがどのように䜿われおいるかわからないりェブサむトを制䜜しおいる堎合、この戊略は最適ではないかもしれたせん。

Heading タグのデフォルトのマヌゞン倀を継続的に䞊曞きし続けるず、結局䜜業量が増えおしたいたす。

もしプロゞェクト党䜓を通しおほずんどの党おのHeadingタグが同じマヌゞンに埓う必芁がある堎合、これは効果的な戊略ず蚀えたす。

このタむポグラフィのスペヌス方法に぀いおは、タむポグラフィ戊略で詳しく説明しおいたす。

ボタンずボタン列のための FlexたたはGrid

シンプルなボタンレむアりトを䜜成するためにCSSのflexたたはgridを䜿甚するこずができたす。

アむコン付きボタンの䟋

テキストずアむコンを持぀ボタンを䜜成したす。ボタン芁玠にflexたたはgridを適甚しお、テキストずアむコンの間にスペヌスを䜜成したす。

これは、耇数のネスト芁玠を持぀ボタンを実装するための簡単でシンプルな方法です。

ボタン列の䟋

2぀のボタンの間に氎平方向のスペヌスを䜜成するには、芪ラッパヌを通しおボタン間に氎平スペヌスを適甚したす。

webflow button group

ボタンの芪ラッパヌにflexたたはgridを適甚するこずで、ボタンずボタンの間に氎平スペヌスを䜜るこずができたす。

ボタンクラスに盎接margin-rightを適甚するず、buttonの䜿甚方法が制限されたす。buttonは、ボタンの行だけでなく、すべおのむンスタンスで動䜜する必芁がありたす。

氎平マヌゞンのためにスペヌスブロックを適甚するず、モバむルでうたく機胜しない堎合がありたす。倚くのモバむルデザむンでは、特定の氎平スペヌスが必芁です。スペヌスブロックではモバむルデザむンの調敎ができたせん。

Client-Firstでは、flexやgridを䜿っおボタン列にスペヌスを䜜るのが理想的だず考えおいたす。

内郚芁玠のサむズにナヌティリティパディングを䜿甚しないでください

アむテムのコンテンツの呚囲にパディングを䜜成するためにナヌティリティクラスを䜿甚するこずはおすすめしたせん。この戊略はCSSの芳点からは機胜し、求められる結果を埗るこずができたすが、クラスのディヌプスタッキングやモバむルのスタむリングの衝突を匕き起こす恐れがありたす。

通垞、内郚芁玠のパディングは、各ブレヌクポむントごずに特定のサむズのカスタマむズが必芁になる堎合がありたす。Client-Firstのスペヌスシステムでは、ブレヌクポむント間のスペヌスの倀を制埡するこずはできたせん。

代わりに、内郚芁玠のパディングをカスタムクラスに盎接適甚しおください。

スペヌスのカスタムクラスフォルダを䜜成する

「spacer」ずいう単語は、カスタムクラスにも䜿甚するこずができたす。

倚くの堎合、ナヌティリティクラスシステムspacer-ずしお䜿甚したす。

たた、プロゞェクト党䜓で䞀意のスペヌスを管理するためのカスタムクラス spacer_ずしおも䜿甚できたす。

スペヌスをグロヌバルに管理する必芁がある再発する芁玠がある堎合は、spacer_[element] を䜿甚しおそのカスタム芁玠のスペヌスを管理できたす。この新しいspacer_フォルダは、グロヌバルに保持する必芁のあるすべおのカスタム芁玠固有のスペヌスの敎理に圹立ちたす。

spacer_header

spacer_sticky-nav

spacer_title-primary

spacer_title-subtitle

spacer_footer

spacer_フォルダは、spacer_home-faq のようなカスタムな芁玠に察しおも䜿甚できたす。

‍

NEXT

スペヌス戊略

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Reset
HTML font size
px
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
px values
rem values
2px
=
0.125rem

Closest to Client-First values

2px
=
0.125rem

Neighboring values

2px
=
0.125rem