Webサイトで未使用の画像とCSSスタイルを見つけるにはどうすればよいですか?[閉まっている]


117

未使用の画像ファイルを見つけるために使用できる方法(試行錯誤以外)はありますか?サイトに存在しないIDとクラスのCSS宣言はどうですか?

サイトをスキャンしてプロファイルを作成し、読み込まれていない画像やスタイルを確認するスクリプトを作成する方法があるようです。


Hey Jon ...ちょうど今(質問と回答を読んだ後)私が質問したのはあなただというのがわかりました。4年後、私はここでまったく同じものを探しています!StackOverflowは本当にすばらしい...ちなみに、私はあなたのプロファイルにある「Work on my machine」というバッジが大好きです...これを借ります!:D
レニエルマッカフェリ


この質問を編集して、SOのルールに適合するようにしました。自分でも答えが必要なので、少なくともそう願っています。
SMBiggs

画像のgulp-delete-unused-imagesを試してください
Louis Philippe

回答:


67

ありますFirefoxの拡張機能がありました 見つけるページ上に未使用のCSSセレクターが見つかりました。それ持っているサイト全体をクモにするオプションがありました。バージョン3.01すべき Firefoxの新しいバージョンで動作する可能性があります。

http://www.brothercake.com/dustmeselectors/

そしてここに別のオプションがあります:

https://addons.mozilla.org/en-US/firefox/addon/css-usage/


2
はい、これはFireFoxの古いバージョンでのみ機能しますが、 CSSの使用-Firefoxアドオン は同じで、最新バージョンでも機能します。
Andrea Salicetti、2011年

3
2018年での作業でもない
ロニー・ベスト

74

Webサービスに料金を支払ったり、アドオンを検索したりする必要はありません。これは、F12でGoogle Chromeにすでにあります。 (Inspector)->Audits->Remove unused CSS rules

スクリーンショット:スクリーンショット

更新:2017年6月30日

現在、Chrome 59はCSSおよびJSコードをカバーしています。https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverageを参照してください

ここに画像の説明を入力してください


3
これは素晴らしいです、ヒントをありがとう!
ブライアン

4
既存のツールを使用すると便利ですが、サイト全体ではなく、読み込まれたページのみがスキャンされますか?
Mark Cooper

7
素晴らしいです、ありがとう。これらのスタイルの1つ以上が使用されていないことを確認するには、さまざまなサイズでリロードする必要があるため、レスポンシブWebサイトには注意してください。表示されているビューポートのスタイルのみを検出します。
micah 2012年

1
手動で削除プロセスを実行するのではなく、スタイルシートの整理されたファイルを取得する方法はありますか?
Daniel Sokolowski、

2
これは、すべてのCSSを1つのファイルに圧縮するサイトにとっては実行可能なオプションではない可能性があります。特定のページを監査すると、多くの未使用のCSSが表示されますが、それらのスタイルは他のページで使用されます。したがって、単一のページを監査することは、私の意見では良いオプションではありません。
SaurabhM 2014年

19

ファイルレベル:

wgetを使用して積極的にサイトをスパイダーし、httpサーバーログを処理してアクセスされたファイルのリストを取得し、サイト内のファイルと比較します

diff \
 <(sed some_rules httpd_log | sort -u) \
 <(ls /var/www/whatever | sort -u) \
 | grep something

5
追加のコマンドラインマニアのために+1!
ngeek

2
ミラーwgetオプションは、参照されていない未使用のファイル、つまりを自動的にプルーニングするための優れた方法wget -m <your site>です。スタイルシートは、最初にかかわらず、未使用のセレクタから剪定されなければならない-自動そのタスクのための良い候補のようなこのルックス:developers.google.com/speed/pagespeed/psol
ダニエルSokolowski

10

CSS冗長性チェッカーはローカルで実行するツールで、スタイルシートと、URLのリストまたはHTMLファイルのディレクトリのいずれかを渡します。ツールのサイトでの説明は次のとおりです。

CSSスタイルシートと、HTMLファイルのURLをリストする.txtファイル、またはHTMLファイルのディレクトリのいずれかが指定された単純なスクリプトは、それらすべてを反復処理し、HTMLで決して呼び出されないCSSステートメントをスタイルシートにリストします。

基本的に、CSSファイルを適切かつコンパクトに保つ​​のに役立ちます。そしてそれはかなり正確です。


6

A List Apartブログの投稿でTim Murtaughが述べたように、「CSSをクリーンに保つための2つのツール」:

csscss

csscssは、指定されたCSSファイルを解析し、どのルールセットに重複した宣言があるかを通知します。

そして質問に最も関連性があります:
ヘリウム-css

ヘリウムは、Webサイトの多くのページで未使用のCSSを検出するためのツールです。

ツールはJavaScriptベースで、ブラウザから実行されます。

Heliumは、サイトのさまざまなセクションのURLのリストを受け入れ、各ページを読み込んで解析して、すべてのスタイルシートのリストを作成します。次に、URLリストの各ページにアクセスし、スタイルシートにあるセレクターがページで使用されているかどうかを確認します。最後に、特定のページで使用されていないことが判明した各スタイルシートとセレクターの詳細を示すレポートを生成します。


3

私は、Adobe DreamweaverまたはAdobe Goliveのいずれかに、孤立したスタイルと画像の両方を見つける機能があることを思い出しているようです。今は覚えられません。おそらく両方ですが、機能は十分に隠されていました。


1
はい、Dreamweaverで孤立したファイルを見つけることができます。[サイト]> [リンクの確認]にあり、ドロップダウンを[孤立したファイル]に変更します。ただし、相対リンクと絶対リンクには注意してください。実際のリンクはWeb上の画像のローカルコピーではなく、ライブコピーを指しているため、すべての画像が孤立したファイルであることがわかりました。
スチュアートヤング

3

TopStyleには、孤立したクラスを見つけて処理するための一連のツールがあります。また、HTMLでIDとクラスが使用されている場所に関するレポートも表示されるため、関連するマークアップをすばやく開いてスキップすることができます。この機能に関するウェブサイトの宣伝文句は次のとおりです。

サイトレポート:サイトでスタイルが使用されている場所がひと目でわかります。どのスタイルシートでも定義されていないスタイルクラスをどこに適用したかを確認するか、使用していない定義済みのスタイルクラスを確認してください。

見慣れないWebサイトの分析に非常に役立ちます。

ただし、未使用の画像は検出されません。


なぜこの回答は否決されたのですか?
Charles Roper

2

Chromeカナリアビルドの開発者向けツールバーには、実験的な開発者向け機能の1つとして「CSSカバレッジ」のオプションがあります。このオプションはタイムラインタブに表示され、未使用のCSSのリストを取得するために使用できます。

ここに画像の説明を入力してください

開発者ツールバーの設定でもこの機能を有効にする必要があることに注意してください。この機能はおそらく公式のChromeリリースになるはずです。

ここに画像の説明を入力してください


1

Firefoxのすべてのバージョンで動作するこのツールを見つけました!それがどのように機能するかを学ぶのに少し時間がかかりますが、それが始まるとそれはかなり良いようです。これは、CSSセレクターをコメントアウトした新しいバージョンのCSSを保存するため、必要に応じてすばやく元に戻すことができます。

CSSの使用-Firefoxアドオン


1

この小さなツールは、いくつかのhtmlで使用されているcssルールのリストを提供します。

ここにコードペンがあります

をクリックしRun code snippet、次にをクリックしFull pageてアクセスします。次に、スニペットの指示に従います。全ページを実行して、html / cssで動作することを確認できます。

しかし、コードペンをツールとしてブックマークするだけの方が簡単です。

/* CSS CLEANER INSTRUCTIONS
   1. Paste your HTML into the HTML window
   2. Paste your CSS into the CSS window
   5. The web page result now ends with a list of just the CSS used by your HTML!
*/

function cssRecursive(e) {
  var cssList = css(e);
  for (var i = 0; i < e.children.length; ++i) {
    var childElement = e.children[i];
    cssList = union(cssList, cssRecursive(childElement));
  }
  return cssList;
}

function css(a) {
  var sheets = document.styleSheets,
    o = [];
  a.matches = a.matches || a.webkitMatchesSelector || a.mozMatchesSelector || a.msMatchesSelector || a.oMatchesSelector;
  for (var i in sheets) {
    var rules = sheets[i].rules || sheets[i].cssRules;
    for (var r in rules) {
      if (a.matches(rules[r].selectorText)) {
        o.push(rules[r].cssText);
      }
    }
  }
  return o;
}

function union(x, y) {
  return unique(x.concat(y));
};

function unique(x) {
  return x.filter(function(elem, index) {
    return x.indexOf(elem) == index;
  });
};

document.write("<br/><hr/><code style='background-color:white; color:black;'>");
var allCss = cssRecursive(document.body);
for (var i = 0; i < allCss.length; ++i) {
  var cssRule = allCss[i];
  document.write(cssRule + "<br/>");
}
document.write("</code>");


0

ここにリストされているすべてのツールは、CSSに最適です。Dreamweaver&Coについては知りませんが、しばらく前に小さなプログラムを作成して、Webサイトプロジェクトのクリーンアップを支援しました

未使用のファイルを検索

CSSやその他のものではなく、孤立した画像やその他の種類のファイルには役立ちます。

それが役に立てば幸い!


0

ヘリウムCSSは、このための優れたツールです。ただし、このツールはWebサイトの開発バージョンまたはローカルバージョンで実行する必要があります。これを製品版で実行すると、訪問者はヘリウムのテスト環境を見ることができます。

https://github.com/geuis/helium-css

http://www.unknownerror.org/opensource/geuis/helium-css


ヘリウムはすでに答えられました。これはその答えに対するコメントであるはずです。
Jan Doggen、2015年

-1

未使用の画像ファイルを見つけるためのツールに関する質問に答えるために、Xenu Link Sleuthを使用してサイトをスパイダーし、サイトが使用するすべての画像を見つけることができます。次に、Xenuは、孤立したファイルを見つけるためにディレクトリをクロールできるように、ftpアクセスを要求します。私はまだ本番サーバーで使用していませんが、調べる価値はあります。

編集:JavaScriptで使用されている画像を削除しないように注意する必要があります。


なぜ反対票か。
SMBiggs
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.