Closed manabuyasuda closed 7 years ago
.a-
Atomsは単体でも使用できるサイト共通の小さなコンポーネント。.m-
MoculuesはAtomsを組み合わせたような比較的シンプルなコンポーネント。特定のコンテキストを持っていないことが多い。.o-
OrganismsはAtomsとMoculuesを組み合わせたような比較的複雑なコンポーネント。特定のコンテキストを持っていて、1箇所でしか使わないものもある。.t-
Templatesはすべてのページで使われるような共通部分のレイアウト。ワイヤーフレームのような大きな単位。.p-
PagesはTemplatesのパターン違いや、ある状況にだけ表示するものなど。トップページは使いまわさない前提なのでOrganismsでざっくり作っていけばいいのかなと思います。
レポートページはトップページと若干レイアウトが異なるので、Pagesでレイアウトを指定しています(FLOCSSのComponentっぽい感じ)。 ページ内のコンポーネントはMoluculesとOrganismsで作って使い回す想定です。
サイトの用途やデザイン的にコンポーネント化しにくいところがあったので、ECSSをベースにしたバージョンも作りました。
/index_ecss.pug
/report/report01_ecss.pug
参考リンクです。
命名規則はECSSのルールに沿っています。今のところvariant
はありません。
namespace-Module_ChildNode-variant
ネームスペースは省略せずに以下のようにしました。
.common-
サイト全体で使える共通スタイル.home-
/index.html
のスタイル.report-
/report
のスタイル.common-
にはヘッダーやフッターのような共通部分、ワイヤーフレームのような大きなレイアウトが含まれます。あとはグリッドやボタンのベーススタイル(主に構造を持っていて見た目を含まない)を持たせることを想定しています。FLOCSSのComponentレイヤーやITCSSのObjectレイヤーと同じような考え方です。
ネームスペースを変更しました。
.st-
サイト共通の構造的モジュール.sw-
サイト共通の汎用的モジュール.home-
/index.htmlのスタイル.report
- /reportのスタイルsw
namespaceは計画的に管理する必要があります(ECSSでは共通化をできるだけ避けて分離することをテーマとしているので)。
現状ではボタンとグリッドのベーススタイルくらいかなと思っています。
ECSSについてまとめました。 個人的にはこのサイトはECSSで書いたほうがいいかなと思っているので、 ザッとでも見ておいていただけるといいかなと思います。
https://github.com/manabuyasuda/styleguide/blob/master/how-to-ecss.md
ミーティングにて、ECSSでコーディングすることが決まったので、_ecss.pug
を残してmasterにマージします。
マージ後はディレクトリをECSS向けに修正します。CSSも一旦削除します(ベース以外)。
全員でコーディングをしたときに、命名規則などのユレが出ないようにベースになるものを作る。 HTMLは構造が分かる程度でいい。対象はトップページとアーカイブページ。