巨大なCSSファイルとHTMLファイルがあります。 HTMLファイルの表示中にどのルールが使用されていないかを知りたい。このためのツールはありますか?
CSSファイルは数年かけて進化してきましたが、私が知っていることから、CSSファイルから何も削除されたことはありません。
編集: Dust-Me Selectors またはChromeのWebページパフォーマンスツールを使用することが推奨されました。ただし、どちらもセレクターのレベルで機能し、個々のルールでは機能しません。セレクター内のルールが常にオーバーライドされるケースがたくさんあります。これは、私がほとんど取り除きたいものです。例えば:
body { color: white; padding: 10em; }
h1 { color: black; }
p { color: black; }
...
ul { color: black; }
HTMLのすべてのテキストはラッパー要素の中にあるため、決して白ではありません。 body
のパディングは常に機能するため、もちろんbody
セレクター全体を削除することはできません。そして、私もそのような役に立たないルールを取り除きたいです。
編集:そして、無駄なルールの別のケース:何も変更せずに既存のルールを複製する場合:
a { margin-left: 5px; color: blue; }
a:hover { margin-left: 5px; color: red; }
幸いなことに、2番目のmargin-left
を取り除きます...繰り返しますが、これらのツールはそのようなものを見つけられないようです。
編集:私はすべての答えに感謝しますが、悲しいことにあなたが提案したツールは有用な提案をしませんでした。私はあなたの答えを支持しましたが、上で指定したように、よりきめ細かく行うツールを待ちます。
ありがとうございました、
Dust Me Selectors Firefox拡張機能
Chrome開発者ツールでは、Webページパフォーマンスツールを使用して、未使用のCSSルールを見つけることができます。
nused-CSS.com をご覧になることもできます
私はいつも CSS Usage が好きでした。これはFirebugのプラグインであり、ページをスキャンして、どのCSSルールが適用されていないかを確認できます。さらに、自動スキャンし、複数のページにわたって機能します。
Uncssを確認してください。これはノードモジュールです。
「UnCSSは、スタイルシートから未使用のCSSを削除するツールです。複数のファイルで機能し、JavaScriptが挿入されたCSSをサポートします。」
https://www.npmjs.com/package/uncss
コメント後に編集:
私はあなたが2つの異なることを求めていると思います:
未使用のルールを自動的に削除します。これがuncssができることです。 CSS byebyeというこのツールも作成しましたが、あなたが尋ねるような自動ではありません: https://www.npmjs.com/package/css-byebye
ルールがマージ/簡略化される可能性のあるスタイルシートを最適化します。
その場合、この種のことを行う2つのツールをお勧めします。
彼らは多かれ少なかれ同じ最適化を行い、時には一方が他方よりも良い結果をもたらし、時にはそれは反対です。スタイルシートに依存します。 (次も実行できます:P)
私は、うなり声でビルドプロセスの一部としてそれらを使用します。ですから、あなたが尋ねるような視覚的なものではありませんが、彼らはあなたが望む種類の最適化を行います。
CSSOについて彼らが言うことはここにある(完全な情報はこちら: https://en.bem.info/tools/optimizers/csso/ )
構造最適化:
@ジョン:優れたツール、リンクをありがとう
@liori: Firefox Web Developerプラグイン もお勧めしますまた、CSSを3秒ごとに保存およびアップロードしなくても、CSSの変更をテストできます。 +より多くの機能をロードします。
Firebugにプラグインする非常に素晴らしいDOMインスペクターもあります。Firebugはプラグインであり、Javascriptのソートに最適です。
実際、新しいFirefox Developer EditionブラウザのJohnは、FirebugやFirefoxユーティリティを使用するよりも優れています。試してみてください。きっと失望することはないでしょう!