CSSでやりがちな無駄な表記についてまとめてみました
01.小数点ゼロを残す
× font-size: 1.0rem;
○ font-size: 1rem;
× line-height: 2.0;
○ line-height: 2;
02.0 に単位を付ける
×
margin: 0px;
padding: 0rem;
top: 0%;
○
margin: 0;
padding: 0;
top: 0;
03.同じ値を4方向書く
× padding: 1rem 1rem 1rem 1rem;
○ padding: 1rem;
× margin: 1rem 2rem 1rem 2rem;
○ margin: 1rem 2rem;
04.background を分解しすぎる
×
background-image: url(bg.jpg);
background-repeat: no-repeat;
background-position: center;
background-size: cover;
○ background: url(bg.jpg) center / cover no-repeat;
05.border を分解しすぎる
×
border-width: 1px;
border-style: solid;
border-color: #000;
○ border: 1px solid #000;
06.font を冗長に書く
×
font-family: sans-serif;
font-size: 1rem;
font-weight: 700;
line-height: 1.6;
○ font: 700 1rem / 1.6 sans-serif;
※可読性重視なら分割でもOK
07.不要な display 指定
×
div {
display: block;
}
○ 削除(デフォルト値)
08.position: relative の乱用
×
section {
position: relative;
}
○ absolute の基準が必要な時だけ付与
09.不要な width:100%
×
div {
width: 100%;
}
○ 削除(block は基本100%)
10.不要な height:auto
×
img {
height: auto;
}
○ 削除
例外:
img {
width: 100%;
height: auto;
}
11.overflow:hidden のクセ付け
×
section {
overflow: hidden;
}
○ 必要な箇所だけ
注意:
・sticky が効かない
・box-shadow 切れる
・absolute 切れる
12.セレクタを深くしすぎる
× #header > nav > ul > li > a
○ .header-link
13.不要な !important
× color: red !important;
○ 詳細度設計で解決
14.不要な calc()
× width: calc(100% - 0px);
○ width: 100%;
15.無意味な min / max / clamp
× font-size: min(1rem, 1rem);
○ font-size: 1rem;
16.色コードの冗長表記
× color: #ffffff;
○ color: #fff;
※ チーム規約次第
17.transform を分ける
×
transform: translateX(-50%);
transform: rotate(30deg);
○ transform: translateX(-50%) rotate(30deg);
18.CSS変数を使わない
×
color: #0077cc;
border: 1px solid #0077cc;
○
--primary: #0077cc;
color: var(--primary);
border-color: var(--primary);
優先度高(まず直す)
- 0px → 0
- 1.0rem → 1rem
- padding: A A A A → padding: A
- 不要な width:100%
- セレクタ深くしすぎない
判断基準
- 短い → 正義ではない
- 意味が明確 → 正義
- 半年後に読める → 最優先
参考になれば幸いです。
ウェブプラスからの発信情報 Number:6064