CSS の class名 と id名 を、全プロジェクトで意識的に統一しようかと

コーディングルール

目次一覧

 状態:結論(後で見返す用)  閲覧数:302  投稿日:2019-09-30  更新日:2019-10-03
これまで / これからは / OOCSSを参考にした独自ルールを設定

「共通」部分と「拡張」部分を分離してクラスを定義する / 見出し / 不採用にした「class名」案

機能別色


これまで / これからは / OOCSSを参考にした独自ルールを設定

 閲覧数:85 投稿日:2019-09-30 更新日:2019-10-01 

これまで


Webサイト毎に異なるデザインを構築&表示
→ もうそんな時代ではない

Webサイト単位で class名 を決定してきた
→ 時間経過すると忘れる。プロジェクト間で整合性が取れなくなる

これからは


プロジェクト単位でデザインを構築&表示
同じプロジェクトに属するWebサービスは、全て同じデザインを適用する

プロジェクトをも横断してclass名を決定していく
→ class名は、全プロジェクトでなるべく共通化させていく

OOCSSを参考にした独自ルールを設定


自分が使いやすいようにする
内容自体もそうだが、それ以上に「統一した書き方を継続使用できる」ことが大事

「共通」部分と「拡張」部分を分離してクラスを定義する
それらを組み合わせてスタイルを定義する

CSS区切り文字
・ハイフン採用
Googleがハイフンって言ってるからハイフンって、そんな安直な考えで本当に良いの? CSS 「id」「class」名 に関する調査履歴 2

CSS至上主義を改める
・1プロパティだけ異なるケースは、HTMLへ直書
・他でも利用している場合、CSSを使用
※CSS作成は、「class名を見て、どこで使用しているか思い出せるぐらいの数」に留めておくことが理想

「共通」部分と「拡張」部分を分離してクラスを定義する / 見出し / 不採用にした「class名」案

 閲覧数:94 投稿日:2019-10-01 更新日:2019-10-01 

「共通」部分と「拡張」部分を分離してクラスを定義する


「共通」部分
・width
・height
・font-size
・line-height
・border

「拡張」部分
・color
・background-color
・border-color

見出し


「サイト共通基底」部分
h1, h2, h3, h4, h5, h6 {}

「共通」部分
.h2-entry-title{}

「拡張」部分
・1プロパティだけ異なるケースは、HTMLへ直書する
<h2 class="h2-entry-title" style="border-left-color:#FFC107;">

不採用にした「class名」案


不採用にした見出し「class名」案1
.h1にしていない理由は、検索対策
※h と heading が重複しているが、「正確さ」よりも「見た目の分かりやすさ」を重視している
・不採用理由は、案2の方が短くて分かりやすいと思ったから
.h1-heading
.h2-heading
.h3-heading
.h4-heading
.h5-heading

不採用にした見出し「class名」案2
不採用理由は、案3の方が短くて分かりやすいと思ったから
.heading-1
.heading-2
.heading-3
.heading-4
.heading-5

不採用にした見出し「class名」案3
・不採用理由は、何のh1タグか不明だから
※「共通」部分は<h1>に書く前提
.h-1
.h-2
.h-3
.h-4
.h-5


OOCSS
「CSSプロパティ」書く順番

P46

 閲覧数:106 投稿日:2019-10-01 更新日:2019-10-12 


Webサービステーマカラー
Blue
#2196F3

機能別色比較一覧表
機能 系統 カラーコード マテリアルカラー 備考
告知(お知らせ) Amber #FFC107 -
コンテンツ表示 - #5FADFC × なぜこのカラーコードを選択したか理由は不明
投稿 黄緑 Lime #CDDC39 ボタン背景色として使用する場合は、一つ下の #C0CA33
編集 Blue #2196F3 -
削除 Pink #E91E63 -

作成class名


.h2-entry-title
.outer-box
.inner-box
.entrylist-outer-box
.entrylist-inner-box
.entrylist-title
.entrylist-metatag-txt
.entrylist-metatag-backcolortxt

「ボタン」と「テキストリンク」の使い分け


単なる画面遷移
・基本的に「テキストリンク」を使用する
・但しカテゴリーだけは、「カテゴリーに応じた背景色ボタン」を使用する
※(デザイン上の理由により)すべてのカテゴリーリンクがボタンとなるわけではない

ボタン
機能ごとに背景色を変更する


ボタン表示名 機能名 背景名 カラーコード 内容 表示要件 備考
編集する 編集 Blue #2196F3 - - -
公開中 → 非公開へ変更する 編集 Blue #2196F3 - - -
「画像」を変更するか、「画像コメント」を編集する 編集 Blue #2196F3 - - -
「画像」と「画像コメント」を削除する 削除 Pink #E91E63 - - -
投稿する 投稿 - #C0CA33 - - デフォルトから修正中。Limeはボタン背景色として薄すぎるため一つ下の#C0CA33を使用。一つ左隣の Light Green も試したが、これはまた別の色なので若干の違和感が残る
ファイルを選択 投稿 - - - - デフォルト
選択キャンセル 投稿 - - - - デフォルト
アップロードする 投稿 - #C0CA33 - - 「投稿する」ボタンと同じデザインを適用。文言のみ変更
チェックしたファイルを削除する 削除 Pink #E91E63 - - 「投稿する」ボタンと同じデザインを適用。色と文言を変更
xxxxで新規アカウント作成すると「記事購入」が可能になります。※無料でアカウント作成できます 告知 Blue #2196F3 - - 「上記告知色はボタン背景色としては薄いため、同系統の #FF5722 を使用」と思ったけれども、 Blue を使用する
記事を購入する 購入 Blue #2196F3 - - 重要(かつ使用頻度が低い)ボタンは、Webサービステーマカラーである Blue を使用する

htmlタグ


htmlタグ階層の定義はあいまい
正解はない

Googleへ忖度することを止める
・htmlタグの意味を考える
・将来の自分が見て、瞬時に理解できることが大事
・プロジェクト間で、統一することが大事

要点
ページ間で、階層構成を変更する


記事詳細ページでは、headerタグを使用しない
トップページ タグ配置階層 / 記事詳細ページ タグ配置階層


(私の)コーディングルール


「CSSプロパティ」書く順番

(私の)HTMLコーディングルール



類似度ページランキング
順位 ページタイトル抜粋
1 ページで使用されている「id名」「class名」をChromeで取得したい   33
2 CSS 「id」「class」名 に関する調査履歴 1 33
3 divタグがdisplay:block;とかしても、ブロック要素にならないときは、 32
4 Illustrator CS3では、[オブジェクト全体に合わせる]項目が存在しない。そのため「アートボードの大きさ」に自動で合わせることは出来ない 30
5 HTML5で、set_include_pathを用いると、先頭に謎の空白行ができる 30
6 タグの"submit"属性の見た目を、CSSで変更しようとしてハマる 30
7 Illustrator CS2 でファイル名に「更新済み」を追加しない 29
8 プルダウンメニュー(セレクトボックス)要素を右揃えしようと思ったけど、出来なかったのでメモ 28
9 Illustrator CS3でのJavaScript実行方法 28
10 プロジェクト別CSSリファクタ履歴 28
11 img srcタグで、画像の上に文字 28
12 PhotoShop CS3で、ドロップシャドウと、テキストを囲む色 27
13 Googleがハイフンって言ってるからハイフンって、そんな安直な考えで本当に良いの? CSS 「id」「class」名 に関する調査履歴 2 27
14 positionプロパティのrelative指定は、デフォルトではない 27
15 CSS3-mediaqueries.jsは、@ importスタイルシートに記述した内容を反映しない 27
16 サイトにプログラムコードを貼り付ける preタグのCSS 26
17 「PhotoShop CS3」 と、「Vieas」 の違い 26
18 bootstrap3で意図せず横スクロールバーが表示される場合は、containerクラスの入れ子を疑う 26
19 CSSだけで、任意の要素に配置した画像を画面一杯に表示することは、基本的には出来ない。「img src」「背景画像」「div要素」何れの場合でも。可能なのは、特殊な要件が重なった場合だけ 26
20 デフォルトの「Google Chrome」ではURL欄にwwwが表示されないため、「Microsoft Edge」を使用する 25
2021/7/28 9:17 更新
週間人気ページランキング / 7-21 → 7-27
順位 ページタイトル抜粋 アクセス数
1 RGB ⇔ Lab | 色変換(色) 47
2 画面キャプチャ | Chrome 拡張機能(ブラウザ) 32
3 血の色 / #b30000 / #360800 / #ff0000 | 色 30
4 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 26
5 RGBの種類 / ビットカラー | RGB(色) 17
6 「属性」「プロパティ」「アトリビュート」の違い | CSS 16
7 「マウスオーバー」「ロールオーバー」「ホバー」の違い | CSS 15
7 HSLとHSVの違い | 色変換(色) 15
8 使用していないCSSをチェックする、標準的な方法を知りたい | CSS 14
9 Design 0 12
9 「Bootstrapデザイン」✕「グラフ」 | 2系(Bootstrap) 12
10 「bgcolor」「background-color」「background」の違い | CSS 10
11 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある | z-index(CSS) 9
12 親要素の背景色を、CSSで打ち消したい | CSS 7
12 「overflow」効果を打ち消すスタイルシートは、「overflow: auto;」 7
12 キャラクター無料着せ替えジェネレーター Rinmaru Games / オンラインサービス | イラスト素材(デザイン) 7
13 Chromeブックマークの不満な点 | Chromeブックマーク(ブラウザ) 6
13 100/7%ではなく100%/7。(100/7)%ではなく(100%/7) | CSS 6
13 ログイン 6
13 グラデーション練習 | Fireworks 8(Fireworks) 6
2021/7/28 1:01 更新