むントロダクション

このドキュメントは、Client-Firstの䞭栞ずなる理念を解説するための入門ガむドです。

Client-Firstに぀いお

👉これはClient-Firstの䞭栞郚分を理解するための簡単な説明です。詳しく理解したい方はこちらでドキュメントの党文をお読みください。
Webflowは初めおですか Webflowの䜿甚経隓がない方は、Client-Firstの前にWebflowの基瀎を孊ぶこずをおすすめしたす。Client-FirstではHTMLやCSSなどの基瀎知識を孊ぶこずができないため、事前にこのようなトピックに関するビギナヌレベルの理解を持っおおくこずが倧切です。たずはWebflowビギナヌのペヌゞをお読みください。

Client-First 6぀のゎヌル

‍

  1. プロゞェクトの組織システムを構築する
  2. Webflow Designerの䜿甚における効率性ず柔軟性を実珟する
  3. プロゞェクトにおけるクラス䜿甚の戊略を定める
  4. 党ペヌゞに共通するコア構造を構築する
  5. 拡匵性があり管理のしやすいWebflow構造を䜜る
  6. デベロッパヌ、クラむアント、その他誰もがプロゞェクトを理解できるようにする

‍

"Client-First"に蟌められた意味

Client-Firstクラむアントファヌスト = Webflowの構築プロセスにおいお、クラむアントの利益を最優先する

クラむアントを最優先に考えお構築された、クラむアントのニヌズを満たし、より良いWebflowデベロッパヌずなるためのスタむルシステムです。

クラむアントが私たちに求めおいるこず

  1. スケヌラビリティのあるWebflowプロゞェクトの䜜成
  2. 品質はそのたたにスピヌドを向䞊する
  3. 代理店が管理しやすいプロゞェクトの䜜成
  4. クラむアントがベンダヌを倉曎する堎合でも、次のWebflowデベロッパヌ・代理店に匕き継ぐこずができるプロゞェクトの䜜成
  5. クラむアントがDesigner※内で管理できるプロゞェクトの䜜成

* すべおのクラむアントがWebflowのプロゞェクトを管理したいずいう意味ではありたせん。そうではないクラむアントも数倚くいたす。

スケヌラビリティがあり、ロヌンチ埌も柔軟な管理が可胜なプロゞェクトの開発は、Webflowを䜿甚するすべおのクラむアント䌁業に倧きな利益をもたらしたす。

Client-Firstにより、Webflowのデベロッパヌは効率的に開発を進めるこずができるようになり、たたクラむアントにも最高䟡倀のプロゞェクトを提䟛するこずができるようになりたす。

呜名芏則

Client-Firstは、プロゞェクト党䜓を通しお分かりやすいクラス呜名に重点を眮いおいたす。

Webflowデベロッパヌやクラむアントだけでなく、党おの人が事前知識の有無に関わらずクラス名から機胜を理解できるよう呜名されおいたす。

Client-First 呜名芏則の目暙

  • 技術的専門知識のない人でもでりェブサむトを管理できるようにする
  • 明確で、必芁な情報が含たれおおり、か぀描写的な呜名
  • そのクラスの目的に぀いお読者に察しできるだけ倚くの文脈を䞎える
  • クラス名を読んでその目的がわかるようにする
  • 略語、短瞮衚珟、混乱する衚珟は䜿わない
  • そのクラスがりェブサむトずどのような関係にあるのか、できるだけ倚くの文脈を䞎える。
  • 接頭蟞やキヌワヌド管理テクニックに基づいた名前を䜜る
  • クラス名からそのクラスの目的を可芖化する

トピックの抂芁

この玹介ペヌゞでは、Client-Firstに関連する重芁なトピックに぀いお玹介したす。ただし、これがClient-Firstの原則のすべおずいうわけではありたせん。

このペヌゞの目的は、最も重芁なトピックに぀いお解説するこずです。WebflowのスタむルシステムずしおClient-Firstを怜蚎しおいる方は、このペヌゞをお読みください。

Webflowにフォヌカスした戊略

  • クラス戊略
  • コア構造戊略
  • タむポグラフィ戊略
  • スペヌサヌ戊略
  • フォルダ戊略
免責事項: これらはWebflowの戊略であり、必ずしも埓来のHTMLやCSS のベストプラクティスに沿ったものずは限りたせん。WebflowはプロゞェクトでHTMLずCSSを芖芚的に管理する方法を再定矩したした。Client-First はWebflow Designer のワヌクフロヌず構成に特化しお構築されおいたす。

[fs-toc-h3]クラス戊略

クラスは「カスタムクラス」ず「ナヌティリティクラス」の2぀で線成されおおり、アンダヌスコア_を䜿っお分けられおいたす。

カスタムクラスは、クラス名に _ が入っおいたす。
‍header-primary_content
ナヌティリティクラスはクラス名に _ を含みたせん。
‍text-color-black

[fs-toc-omit]カスタムクラス

このクラスは通垞具䜓的か぀芖芚的な芁玠を衚すために䜿甚されたす。

カスタムクラスは特定の芁玠やペヌゞ、芁玠のグルヌプ化、たたは単䞀の芁玠のために䜜成されたす。䟋えば、チヌムスラむダヌのスタむルを蚭定するクラスや、プロゞェクトのグロヌバルヘッダヌのスタむルを蚭定するクラスがありたす。カスタムクラスは、クラス名にアンダヌスコアを含みたす。

䟋

  • ‍about-team_component
  • ‍footer_column
  • ‍clients-slider_arrow
  • nav_link
  • home-header_texture

form_[element-name] を䜿甚したフォヌムコンポヌネントの䟋:

  • ‍form_component
  • form_wrapper
  • form_block
  • form_label
  • form_input
  • form_submit

䞊蚘の䟋は、それぞれ特定の識別可胜な芁玠を指しおいたす。

[fs-toc-omit]ナヌティリティクラス

このクラスは通垞、ペヌゞ䞊の重芁なCSSスタむルに䜿甚されたす。

‍

ナヌティリティクラスは、特定のCSSプロパティの組み合わせのために䜜成され、プロゞェクト党䜓の芁玠に適甚するこずができたす。䟋えば、 background-color のクラスや font-size のクラスがこれに含たれたす。ナヌティリティクラスは、クラス名にアンダヌスコアを含みたせん。

Client-Firstのスタヌタヌプロゞェクトに付属しおいるクラスのほずんどはナヌティリティクラスです。

䟋

  • ‍padding-global
  • max-width-small
  • margin-large
  • ‍text-color-blue
  • background-color-black
  • ‍display-none

䞊蚘の䟋は、それぞれ特定の CSS スタむルプロパティを指しおいたす。

[fs-toc-omit]グロヌバルクラス

サむト党䜓でグロヌバルに䜿甚できるカスタムクラスたたはナヌティリティクラス

グロヌバルクラスは、プロゞェクト党䜓で䜿甚するこずを目的ずしおいたす。特定のむンスタンスのためのものではなく、プロゞェクト党䜓に適甚される「グロヌバル」、぀たり「統䞀された」スタむルです。
グロヌバルクラスには、ナヌティリティクラスずカスタムクラスがありたす。

ナヌティリティクラスは本質的にグロヌバルなものであるため、垞にグロヌバルクラスずなりたす。

グロヌバルクラスは、 header_content のようなカスタムクラスであるこずもありたす。プロゞェクト党䜓で繰り返し䜿甚されるヘッダヌ構造がありたすが、このクラスによっお header_ のスタむルを党䜓的に管理するこずができたす。

このようなクラスをりェブサむト党䜓で䜿甚する堎合、そのクラスはグロヌバルクラスずみなされたす。

[fs-toc-omit]コンボクラス

ベヌスクラスに察するバリ゚ヌションずしお䜜成されるクラスです。コンボクラスは、ベヌスクラスのスタむルを継承しさらにスタむルを远加しおいく圢で䜜られたす。

ここでは、耇数のクラスで圢成されたコンボクラスの1぀目のクラスを「ベヌスクラス」ず定矩したす。ベヌスクラスの䞊にさらにクラスを远加するこずで、独自のバリ゚ヌションを生み出すこずができたす。この独自のバリ゚ヌションを䜜成するためのクラスは頭に is- が付いおいたす。

積局された is- クラスは、その前のベヌスクラスず組み合わせたずきにのみ機胜したす。積局されたクラスは組み合わせられるこずではじめおコンボクラスずなりたす。

この動画では、クラス is-blue が単独では機胜しないこずを説明しおいたす。このクラスはベヌスずなる button クラスに远加する圢でしか機胜したせん。

コンボクラスは、カスタムクラスやナヌティリティクラスから䜜成するこずができたす。動画内の button is-blue の䟋では、コンボクラスの䞀郚ずしおナヌティリティクラスが䜿甚されおいたす。

この抂念に぀いおは、クラス戊略1のペヌゞで詳しく解説しおいたす。

[fs-toc-h3]コア構造戊略

Client-Firstでは、すべおのビルドで䜿われるデフォルトのコア構造を蚭定しおいたす。

  • page-wrapper
  • main-wrapper
  • section_[identifier]
  • padding-global
  • container-[size]
  • padding-section-[size]

‍

  • page-wrapper すべおのペヌゞコンテンツを囲みたす。
  • main-wrapper ペヌゞの「メむン」コンテンツをすべお囲みたす。りェブアクセシビリティのためのベストプラクティスです。
  • section_[identifier] Webflow Designerのナビゲヌションパネルを芖芚的に敎理したす。
  • padding-global ペヌゞのコンテンツの巊右の䜙癜をサむト党䜓で統䞀しお管理したす。
  • container-[size] コンテンツを囲むコンテナの最倧幅を管理したす。
  • padding-section-[size] サむト党䜓のセクションの䞊䞋の䜙癜を管理したす。


このコア構造を䜿甚するこずで、プロゞェクトの重芁なペヌゞレベルのCSSプロパティを党䜓的に管理するこずができたす。たたこのプラクティスがあるこずで、Client-Firstのデベロッパヌ党䜓が共通のアプロヌチをずるこずが可胜になりたす。

ほずんどのりェブサむトは、以䞋のような構造になっおいたす。

[fs-toc-omit]ペヌゞ構造の䟋

セクションはNavigator内で敎理され、クリックするずアンカヌリンクずしお機胜するようになっおいたす。

[fs-toc-omit]セクション構造の䟋

コア構造の内郚では、カスタムクラスを䜿っおコンポヌネントやビゞュアル芁玠を䜜成したす。カスタムクラスは、ナヌティリティクラスで管理すべきでない芁玠をスタむル化するために䜿甚したす。

この抂念に぀いおは、コア構造戊略のペヌゞで詳しく解説しおいたす。

[fs-toc-h3]タむポグラフィ戊略

可胜な限りタむポグラフィを統䞀し、党䜓的に管理できるようにするための戊略です。Client-Firstでは、タむポグラフィを管理するためにナヌティリティクラスを䜿甚しおいたす。

理想的には、テキスト芁玠にはクラスを配眮せず、body、パラグラフ、 H1 - H6 のHTMLタグに盎接適甚されるデフォルトスタむルを継承するのがベストです。

[fs-toc-omit]HTMLタグ

HTMLタグずは Webflow Universityの資料です。

垞に䞋蚘のスタむリングから䜿甚するようにしおください。

H1, H2, H3, H4, H5, H6 , body

‍

このスタむリングはプロゞェクトの各芋出しず本文を含むデフォルトのスタむルです。

クラスは、デフォルトのスタむルをカスタマむズがある堎合のみ必芁になりたす。

Client-First公匏のcloneableにはナヌティリティクラス集が含たれおいたす。これらのクラスはそれぞれ接頭蟞 heading- たたは text- が付いおおり、テキスト芁玠に適甚するためのナヌティリティスタむルを保持しおいたす。これらのクラスは統䞀されたナヌティリティシステムを通じおカスタマむズを適甚したす。

[fs-toc-omit]タむポグラフィのクラス

  • heading-style-[h#]
  • text-weight-[weight]
  • text-size-[size]
  • text-style-[css-property]
  • text-color-[color]
  • text-align-[alignment]


䟋えばH1芋出しをH2の芋出しず同じスタむルにしたい堎合、 H1 に heading-style-h2 クラスを远加するこずができたす。これにより H1 を H2 ず同様のスタむルに保ちながら、 H1 タグはSEOのために維持するこずができたす。


たた、プロゞェクト内のテキスト芁玠を青色にしたい堎合、そのテキスト芁玠に text-color-blue を適甚しお青色にするこずができたす。

‍

䞊蚘はいずれも、デフォルトのタむポグラフィスタむルをカスタマむズした堎合の䟋です。デフォルトのH1やテキスト芁玠以䞊のカスタマむズの必芁がない堎合、クラスは䞍芁です。

この抂念に぀いおは、タむポグラフィ戊略のペヌゞで詳しく解説しおいたす。

[fs-toc-h3]スペヌサヌ戊略

スペヌサヌは次の2぀のパヌトで構成されおいたす。

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

それぞれが2぀の戊略を実行するこずができたす。

[fs-toc-h4]ナヌティリティクラス

Client-First ナヌティリティクラスに含たれる margin- ず padding- のクラスです。

‍[margin/padding direction class] + [margin/padding size class]

ナヌティリティクラスの考え方では、2぀のスペヌサヌ戊略を提瀺しおいたす。

  1. スペヌサヌブロック戊略
  2. スペヌサヌラッパヌ戊略

䞡方ずも同じナヌティリティヌスペヌサヌクラスをベヌスにしおいたすが、ペヌゞぞの適甚方法によっお分けられおいたす。

スペヌサヌブロック戊略

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

スペヌサヌラッパヌ戊略

Client-Firstにおける「スペヌサヌラッパヌ」ずは、子芁玠を囲み、兄匟芁玠の間にスペヌスを䜜るDivブロックのこずです。

‍

1. 次の2぀のクラスを䜿い、ペヌゞにDivブロック「スペヌサヌラッパヌ」を远加する。
‍[margin/padding-direction] + [margin/padding-size]

2. スペヌサヌラッパヌの䞭にコンテンツ芁玠をネストする。

3. スペヌサヌラッパヌが兄匟芁玠ずの間に䜙癜margin たたは paddingを䜜成する。

[fs-toc-h4]カスタムクラス戊略

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

芁玠䞊のカスタムクラスは、 margin ず padding の倀を、スペヌサヌが必芁な芁玠に盎接適甚したす。

䟋えば、ナヌティリティクラスでは実珟できない独自の間隔が必芁な芋出しに faq_title を適甚するず、 margin-bottom: 0.75rem のCSSプロパティが faq_title クラスに盎接適甚されたす。

CSSグリッド戊略

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

CSSgridを䜿っお子芁玠間に瞊方向ず暪方向のスペヌスを䜜るこずができたす。

CSSグリッド戊略を䜿甚すれば、リスト内の芁玠に倚数のブロックやラッパヌ、カスタムクラスを適甚する代わりに、芪ラッパヌずいう1぀のコントロヌラヌですべおの子芁玠を管理するこずができたす。

スペヌサヌ戊略に぀いおはこちらのペヌゞで詳しく解説しおいたす。

[fs-toc-h3]フォルダ戊略

Client-First では、Finsweet Extensionを通じたバヌチャルフォルダ機胜を提䟛しおいたす。

Client-Firstにおいおアンダヌスコア_は重芁な圹割を果たしおいたす。

アンダヌスコアはカスタムクラスか぀フォルダであるこずを意味したす。アンダヌスコアを䜿うこずで、カスタムクラスの仮想フォルダを䜜成するこずができたす。

䟋えば blog_header_graphic は、 blog_ フォルダの䞭に header_ フォルダが含たれおおり、さらにその䞭に graphic 芁玠が入っおいるこずを意味したす。

これがバヌチャルフォルダシステムでは、次のように衚瀺されたす。

Client-Firstでは、アンダヌスコアを陀倖するこずでナヌティリティクラスを䜜成しおいたす。ナヌティリティクラスは自動的に「Utility」フォルダの䞭に敎理されたす。

アンダヌスコアを含たないクラスは、Utility フォルダの䞭に配眮されたす。

Utilityフォルダ内に配眮されるフォルダは、クラス名の最初のキヌワヌドから生成されたす。

䟋えば text-color-black の堎合、「Utility Classes」フォルダの䞭に text- フォルダがネストされおおり、その䞭に black の識別子を持぀ color- フォルダがネストされおいるずいうこずになりたす。

これがバヌチャルフォルダシステムでは、次のように衚瀺されたす。

フォルダの機胜を䜿うこずで、プロゞェクトをあらゆる方法で敎理するこずができたす。小さなプロゞェクトず倧きなプロゞェクトでは異なるフォルダ戊略に沿うこずになりたす。同様に、カスタム構築のプロゞェクトはコンポヌネントラむブラリずは異なるフォルダ戊略に埓いたす。

フォルダの力により、構築するプロゞェクトに応じおビルド戊略をカスタマむズするこずができたす。

この抂念に぀いおは、フォルダ戊略 のペヌゞで詳しく解説しおいたす。

サむズずレム

Client-First では、 rem を䜿甚しおいたす。remずは、Designerで入力する倀の単䜍です。

Remずは

Remは「root ephemeral unit」たたは「root em」を略した蚀葉です。

  • Remは、ルヌト芁玠のfont-sizeを基準ずした盞察的な枬定倀です。
  • ここでのルヌト芁玠ずは <html> のこずです。
  • ぀たりremは <html> のフォントサむズに察する盞察倀ずいうこずになりたす。
  • Client-Firstで適甚されるサむズはすべおremで衚蚘されたす。

算出方法

ブラりザでフォントサむズをデフォルトに蚭定した堎合の16pxが1remずなりたす。Webflowプロゞェクト構築の際は、remを蚈算するための基本倀ずしお16pxが䜿甚されたす。

プロゞェクトでのremの枬定倉換は、すべお16の倍数ずなりたす。

96px / 16px = 6rem
32px / 16px = 2rem
4px / 16px  = 0.25rem

なぜremを䜿うのか

remにはアクセシビリティの点で倧きなメリットがありたす。Client-Firstではアクセシビリティを重芁芖しおいるためremを䜿甚しおいたす。

ブラりザのフォント蚭定ずブラりザズヌムは、remベヌスのシステム内で完璧な動䜜を発揮したす。掚奚のremシステムでClient-Firstを䜿甚するこずで、アクセシビリティずコンテンツのスケヌリングに関するベストプラクティスが保蚌されたす。

この抂念に぀いおは、サむズずレムのペヌゞで詳しく解説しおいたす。
NEXT

むントロダクション

Webflowプラットフォヌム内でクラスを識別、䜿甚、管理するための戊略を解説したす。
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