君は自分の書いたCSSを本当に理解しているのか?

Koji ISHIMOTO
4 min readApr 28, 2014

CSSは非常に簡単な言語だ。セレクタとプロパティと値を宣言するだけである。だが、スパゲッティなコードにならずにメンテナンスしやすく、スケーラブルなCSSを書くことは非常に難しい。

そのため、あなたの書くスタイルシートは時とともに重く、汚いものになっていき、手の施しようがなくなる。そうなると、今度はそれを読み込むWebサイト・アプリに害をもたらすことになってしまう。

そう、Critical Rendering Pathの問題だ。レンダリングをブロックするのはなにもJavaScriptだけではない。CSSもレンダリングをブロックするので、我々はCSSに関しても細心の注意を払わなければならない。

しかし、CSSを書く人にその意識があるのだろうか、疑問だ。前述のとおり、CSSをただ書くこと自体は簡単なため、CSSという言語自体も軽んじられている気がする。

CSSを書くためには自分を厳しく律しなければならず、それはJavaScriptを書くよりも難しいことではないだろうか。なぜなら、CSSはシンプルがゆえに何もできないからである。

CoolなCSSを書くためには先人のベストプラクティスを学ぶ必要があり、下記の記事を参考にすれば良いだろう。

このような記事を読んだからといって、すぐさま完璧なCSSを書ける人はいない。だが、近づくことはできる。

自分がどんなCSSを書いているかは数百行程度であれば、何回かスクロールすればある程度は分かるだろう。しかし、最近のWebプロジェクトのCSSは数千行にものぼるのが当たり前だ(中には数万行もあるかもしれない)。しかも、CSSプリプロセッサなどを使っていると、数十ファイルに分かれ一覧することができない。

そこで、私はStyleStatsを作った。StyleStatsはあなたのスタイルシートを解析し、CSSの統計情報を示してくれる。例えば、セレクタの数であったり、プロパティの数であったり、CSS Lintで指摘されるような項目に関してだ。

StyleStatsはNode.jsモジュールなので、Node.jsがインストールされていれば、コマンド1行でインストールできる

npm install -g stylestats

使い方は簡単で、stylestatsの引数に解析したいCSSを指定すればよい。

stylestats path/to/stylesheets

機能は制限されるが、コマンドラインが苦手なあなたのためにオンラインツールも用意した。

StyleStatsを使えば、何千行、何万行あるスタイルシートであろうとも、瞬時に解析でき、解析から得られる結果はあなたのCSSを書くために役立つ指標となるだろう。

計測できないものは改善できないように、自分の書いたCSSを正確に知ることが重要だ。そして、注意深くその変遷を監視続けることで自分を律するのである。

--

--