>  > メーカー直送 オモイオ omoioキッズコーナー用品 キッズスクエアー ウレタンマットB AK-07-L6343 代引き不可

メーカー直送 オモイオ omoioキッズコーナー用品 キッズスクエアー ウレタンマットB AK-07-L6343 代引き不可

日本製ジャガード手提げバッグ(チャーム付)/ブラック(日本製 バッグ(鞄))(内祝い 結婚内祝い 出産内祝い 新築祝い 就職祝い 結婚祝い 引き出物 お返し)(お買い物マラソンセール)

こんにちは、てっちゃんです。
みなさんはお花見しましたか?今年は安定した暖かさで例年よりもすごしやすかったなと思いました。
そして、私事ですがこの春から花粉症デビューになりそうというお話をいただきまして、毎日マスクが手放せません 。いやー、のどのイガイガがたまらなく嫌ですね。

今回は、cssの設計について調べたことを書いていこうと思います (まとめ)ねじ口瓶(黒蓋付 DURAN) 100ml【×5セット】【送料込/送料無料】。
弊社でもフロントエンド陣によりある程度のコーディングガイドラインは決まっていますが、
記述の細かい仕様までには及んでいません。コンポーネントの作り方なども人によって差異が出てきます。
複数人で作業とも慣れば尚更その差異は大きくなります。cssは記述自体はとても簡単でそれゆえに、とてももろくすぐに壊れてしまいます。

参考:なんでCSSすぐ死んでしまうん

なんでCSSすぐ死んでしまうん from Hayato Mizuno


そこで壊れにくcssを設計するためには以下が重要だと言われています トラスコ プロキュービックレインスーツ ネイビー L [ 品番:CRS55 ]。

  • 拡張性
  • 保守性
  • 明瞭性

参考:CSSアーキテクチャ
http://article.enja.io/articles/css-architecture.html

拡張性
サイトを運用していけばそれだけさまざまなコンテンツを追加・変更を行なうことになり、大きなサイトであれば自分一人が触るとは限らなくなります。自分以外の誰かが触る可能性を考慮して容易に管理できることを目指します オリジナルJOHN2TONE JUMPERBLACK。

保守性
コンポーネントやもっと小さい単位の変更を加えた際に既存のcssを壊してしまわないようにすることが大事です Apex エイペックス Mens シューズ Ambulator Conform Double Strap Brown Smooth Leather。

明瞭性
cssのルールは誰が見ても予想通りに振る舞うことが大事です。ルールの追加・変更したときに思い通りに行かないことを避け、既存のルールに影響しないようにしましょう。では、このようなcssを実現するためにはどのような設計をすればよいのでしょうか?

そこで参考にしていくが、以下になります。

  • OOCSS
  • SMACSS
  • BEMM

メーカー直送 オモイオ ウレタンマットB メーカー直送 omoioキッズコーナー用品 代引き不可 キッズスクエアー AK-07-L6343 AK-07-L6343

Object Oriented CSS(オブジェクト指向CSS)元yahooのニコール・サリバン氏により提唱されました。

OOCSSの原則は

  • 構造と見た目の分離
  • コンテナーとコンテンツの分離

構造と見た目の分離
これは、繰り返し定義される様なbackgroundやborderなどの見た目と構造自体を別で定義することです。
以下のコードでは、ボタン自体の構造を分離したことで、見た目を変えることでバリエーションを作ることが出来ます。

1
2
3
4
5
6
7
8
9
10
11
.btn {/* ボタンの構造 */
  width: 200px;
  height: 50px;
  line-height: 50px;
  text-align: center;
}
 
.btn-red {/* ボタンの見た目 */

メーカー直送 タケオキクチ)ローファースニーカー オモイオ omoioキッズコーナー用品 キッズスクエアー ウレタンマットB AK-07-L6343 Backpack】Rebel 代引き不可

  background-color: red;
  color: white;
}
1
<p><a href=“#” class=“btn btn-red">ボタン</a></p>

コンテナーとコンテンツの分離
これは、場所に依存しないセレクタを書くということことです。よく、ヘッダーの中にh1で囲んだテキストを書くことがありますが、

1
2
3
4
5
6
7
8
9
10
11
.header .sub-title {
  font-size:11px;
  color: #ccc;
  border-bottome: 1px solied #ccc;
}
 
.footer .sub-title {
  font-size:11px;
  color: #ccc;
  border-bottome: 1px solied #ccc;
}

と書くことがありますが、これをフッターにも同じスタイルで入れようとするときに同じようなコードを書くことになります。であれば、.sub-titleという単一で書いておけば後からちょっとした変更でも対応しやすくなります。

1
2
3
4
5
.sub-title {
  font-size:11px;
  color: #ccc;
  border-bottome: 1px solied #ccc;
}

また、OOCSSでマルチクラスで書かれていますが、sassの@extendで書くことでシングルクラスで書くことができます。ただ、@extendの多用はcssを肥大化させる要因にもなりますので、用法・用量はお守りください。

SMACSS

こちらも元yahooのジョナサン・スナーク氏に提唱され、パターンを抽出しやすくするためのカテゴリを用意しておくことです。パターンから粒度を導きやすくしています。

  • Base
  • Layout
  • Module
  • State
  • Theme

Base
reset.cssやサイト全体に適用されるスタイルや背景・フォントファミリーなどをカテゴライズして最初に決めてしまえば変更などは行わないスタイルを記述します。

Layout
ここでは、header、footer、.content、side-contentなどの大まかなレイアウトのルールを記述します。ただし、場所に依存するようなセレクタの書き方をしないようにするのが注意点です ブラックストーン BLACKSTONE スニーカー QL70 Genuine Shearling Lined Sneaker Hunting Green Leather。

Module
BaseやLayoutの粒度よりももっと細かいパターンを指していて、この2つを除けばほとんどがここに記述されることなります。また、再利用出来るようにしなければなりません。

State
これは、JavaScriptでよく使うような表示を隠すときの状態を表すルールを記述していきます。

Theme
テーマはその名通り、テーマ自体を変更するときのスタイルを記述します。Stateよりかは粒度が大きいスタイルになります。

BEM

厳格な命名規則を用いた事で近年有名な設計方法となりました。ロシアのYandex社が社内のフレームワークとして公開したものになります。Block-Element-Modifierの頭文字をとってBEMとなっています。

Block
構成の起点となる要素

Element
Blockに所属する子要素

Modifier
BlockやElementから変化した状態を表す要素

BEMの命名規則はElementをアンダースコア2つ(__)、Modifierをハイフン2つ(--)で連結することでBEMの各要素を表現しています。こうすることで、詳細度を低く保つことが出来きます。若干冗長な書き方になりますが、これはこれで便利です。こちらも、シングルクラス前提になってくるので@extendをつかって書くと相性が良さそうです。

ここまで3つの方法で見てきましたが、BEMはシングルクラスに適した構造・命名だと思っていて、逆に、マルチクラスにはOOCSSやSMACSSなどが向いているという印象です。この辺を加味してcssを設計していこうと思います。

参考;ぼくのかんがえたさいきょうのしーえしゅえしゅ
http://t32k.me/mol/log/the-perfect-css-i-thought/

大規模サイトにおける本当は怖いCSSの話

モダンなCSS設計パターンを考える

Thinking about CSS Architecture

悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)

今必要なCSSアーキテクチャ

まとめ

今回は、それぞれの設計思想について学びました。サイトの規模や係る人数によって設計思想を変えていけるようにそれぞれのいいところミックスして独自のルールを作っていこうと思います。その辺の話はまた今度ということで!

Category: CSS ,HTML

Recent Entry

CSSの単位まとめ pxからvm/vh/vmin/vmaxまで

レスポンシブHTMLメールを作ってみての感想

CSSのリファクタリングでした5つのこと

大人が読んでも頭を使う絵本の紹介

サイト内にうまくInstagramを取り入れてるサイト11選

Category

Archive

Link

{yahoojp}jpprem01-zenjp40-wl-zd-61170