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

コーディングルール

目次一覧

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

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

機能別色


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

 閲覧数:384 投稿日: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名」案

 閲覧数:384 投稿日: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

 閲覧数:520 投稿日: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 CSS の class名 と id名 を、全プロジェクトで意識的に統一しようかと 80
2 ページで使用されている「id名」「class名」をChromeで取得したい   33
3 CSS 「id」「class」名 に関する調査履歴 1 33
4 divタグがdisplay:block;とかしても、ブロック要素にならないときは、 32
5 Illustrator CS3では、[オブジェクト全体に合わせる]項目が存在しない。そのため「アートボードの大きさ」に自動で合わせることは出来ない 30
6 HTML5で、set_include_pathを用いると、先頭に謎の空白行ができる 30
7 タグの"submit"属性の見た目を、CSSで変更しようとしてハマる 30
8 Illustrator CS2 でファイル名に「更新済み」を追加しない 29
9 プルダウンメニュー(セレクトボックス)要素を右揃えしようと思ったけど、出来なかったのでメモ 28
10 Illustrator CS3でのJavaScript実行方法 28
11 プロジェクト別CSSリファクタ履歴 28
12 img srcタグで、画像の上に文字 28
13 PhotoShop CS3で、ドロップシャドウと、テキストを囲む色 27
14 Googleがハイフンって言ってるからハイフンって、そんな安直な考えで本当に良いの? CSS 「id」「class」名 に関する調査履歴 2 27
15 ImageMagickで、画像に文字列を描画 フォント 27
16 CSS3-mediaqueries.jsは、@ importスタイルシートに記述した内容を反映しない 27
17 positionプロパティのrelative指定は、デフォルトではない 27
18 「Google Chrome」タブをグループへ追加すると、そのタイミングでグループは自動的に開かれてしまいます。開かないようにすることはできません 27
19 サイトにプログラムコードを貼り付ける preタグのCSS 26
20 「Google Chrome」履歴一覧から、複数履歴を選択して一度に開くことはできません。バージョン: 94.0.4606.81(Official Build) (64 ビット) 26
2024/11/23 0:44 更新
週間人気ページランキング / 11-15 → 11-21
順位 ページタイトル抜粋 アクセス数
1 「パッケージ化されてない拡張機能を読み込む」でインストールした拡張は、chromeを「更新」すると正常動作しなくなることがあります。 | Chrome 拡張機能 12
1 鉄道会社毎のカラーコード | カラーコード(色) 12
2 FontAwesomeでアイコンが□(四角)になって表示されない Forbidden  | Font Awesome(フォント) 10
3 血の色 / #b30000 / #360800 / #ff0000 | カラーコード(色) 6
3 Design 0 6
4 Fireworks で背景画像透明化 | Fireworks CS3(Fireworks) 5
5 RGB ⇔ Lab | 色変換(色) 4
5 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない | モバイルデザイン(デザイン) 4
5 「Google Chrome」の文字が突然ギザギザで表示されるようになったら、「chrome://flags/#top-chrome-md」へアクセス後、右上の「Reset all」ボタンをクリックします。 | Google Chrome(ブラウザ) 4
5 「東京都」のカラーコード取得は難しい | カラーコード(色) 4
5 「Font Awesome 4」と「Font Awesome 5」の違い(Font Awesome バージョン4からのアップグレード) | Font Awesome(フォント) 4
5 16進数カラーコード / 2進数 4
6 カラーコード / 色コード | カラーコード(色) 3
6 「:after擬似要素」は、Chromeの「要素を検証」で確認できない | 擬似(CSS) 3
6 金融機関ブランドカラー / コーポレートカラー | カラーコード(色) 3
6 個人的によく見返すエントリーへのLinkなど | その他 3
7 RGB ⇔ XYZ / CIE RGB / sRGB(D65) / sRGB(C) / Adobe RGB / NTSC RGB 2
7 RGBの種類 / ビットカラー | RGB(色) 2
7 8ビットカラー / インデックスカラー / パレットカラー 2
7 Windows10で「Google Chrome」が常に最前面に表示される。「アクティブウィンドウ」が最前面で表示されない → 解決方法存在しない | Google Chrome(ブラウザ) 2
2024/11/22 1:01 更新