test

2016年11月23日 09:56

フレームワーク


<設計方針>

■FLOCS

・CSSのカテゴライズ

(抽象的、弱いルール)

Fundation:そのWebサイト/アプリケーションにおける基本となるスタイル

Layout:ヘッダー・フッター・カラム

Object Component:ボタン・アイコンなど。

       Project:Componentよりも大きい固有のパーツ。

       Utility:わずかなスタイル調整、clearfixのような汎用クラス

(具体的強いルール)


→カテゴライズし、CSSの記述順を前後させない


・タグの命名規則(MindBEMding)

→詳細度がフラットな状態になる

★ここまでやる必要はない?

.block__element--modifier


// Good

.block {} // 親要素

.block__element {} // 子要素

.block--modifier {} // 親要素のバージョン違い

.block__element--modifier {} // 子要素のバージョン違い


// Bad

.block {}

.block .block__element {}

.block .block--modifier {}

.block .block__element--modifier {}


BEM

Block:パーツ←OOCSSのオブジェクト指向(ボタン・アイコンといった部品(クラス)化)にあたる

Element:要素

Modifer:見た目をかえる要素←OOCSSのスキンにあたる


導入利点

(1)部品化によって、再利用性・拡張性がよい

(2)命名規則により、セレクタのネスト・衝突を防ぐ。また、名前から部品の機能を創造しやすい


導入欠点

(1)開発スピードが遅くなる

・タイピング量が増える

・設計概念共有が必要


・IDセレクタによるCSSの指定を原則禁止。

・important禁止


■1File構成

Sass:導入しない。

→既存のコードを流用するため


<コーディング規約>

・バッティングを防ぐためには、略語化はしない方がいい。

略語化する場合は、略語化前の名前をコメント記載すること。

予測しやすい名前にすること。つけ方は大きく以下2つにわけられる、できるだけ(1)で行うこと

(1)役割・機能 (.button-success/.button-error)

(2)見た目 (.button-green/.button-red)



<適用・運用方法>

・フレームワークの適用は、既存の新UI画面に対しては,可能な範囲で行う。

  (HTMLの修正+再評価が必要になってしまうため。)

・新たにフレームワーク化が必要な機能が発生した場合、

  画面担当者はベースとなるHTMLとCSSをフレームワーク担当者に連絡。

  チェック+フレームワーク化後、担当者にフィードバック。

・本CSSは、同一要素が他ページで出るものだけとする。


■フレームワーク化確認方法

・iPendant(IE Embeded)/ROBOGUIDE(IE7)/ECHO/CGTP


・対象ブラウザはまずはIE11。

  (今後タブレット対応時にその他ブラウザを考慮する必要がある)

→リモート設定にその他ブラウザはない。


<要検討>

・レンダリングモードをIE7に設定すべきか?

   ROBOGUIDE/教示盤/リモートでHTMLを共通化するのであれば、やったほうがいい。

  リモートやタブレット対応の場合は?

・Sassの導入←便利?Sassでコンパイル+実機にのせる+評価するの段階を踏む必要がある

・コーディングルールは存在する?




<備忘録>

子孫セレクタ

→A 要素内のすべての B 要素にスタイルシートを適用するには、

半角スペースを結合子として、セレクタを A B という形で記述します。

//body 階層下にあるすべての p 要素にスタイルシートを適用。

body p {color: red;}


子セレクタ


> を結合子としてセレクタを A > B という形で記述すると、

A 要素の 1 階層下の B 要素にのみスタイルシートを適用することができます。


//body 階層下の p 要素にのみスタイルシートを適用。<

body > p {color: red;}




無料でホームページを作成しよう Webnode