この記事は、ティファニーの最新の本「CSSマスター、第2版」から抜粋しています。 CSSマスターになるための道では、CSSのトラブルシューティングと最適化スキルを習得することが重要です。レンダリングの問題を診断して修正する方法は? CSSがエンドユーザーのパフォーマンスに影響を与えないようにする方法は?コードの品質を確保する方法は?
適切なツールは、効率的なフロントエンド操作を保証できます。この記事では、CSS圧縮技術に焦点を当てます。
開発者ツールは、レンダリングの問題を見つけて修正するのに役立ちますが、それはどれほど効率的ですか?ファイルサイズは十分に小さいですか?現時点では、圧縮ツールを使用する必要があります。
CSSでは、圧縮は単に「不要な文字を削除する」ことだけです。たとえば、次のコードブロックを検討してくださいこのコードには、合計98バイトのラインブレークとスペースが含まれています。圧縮された例を見てみましょう:
<code>h1 { font: 16px / 1.5 'Helvetica Neue', arial, sans-serif; width: 80%; margin: 10px auto 0px; }</code>
今、私たちのCSSはわずか80バイトで、18%の減少です。もちろん、バイトが少ないほど、ダウンロード速度が速くなり、データ送信のコストが低くなります。これはあなたとユーザーにとって良いことです。
<code>h1{font:16px/1.5 'Helvetica Neue',arial,sans-serif;width:80%;margin:10px auto 0}</code>
CSSOを使用するには、コマンドラインインターフェイスに精通する必要があります。 LinuxおよびMacOSユーザーは、ターミナルアプリケーションを使用できます(MacOSはアプリケーション>ターミナルアプリケーションです)。 Windowsを使用している場合は、コマンドプロンプトを使用してください。 [Windows]メニューまたは[Windows]メニューに移動し、[検索]ボックスのCMDと入力します。
インストールcsso
node.jsとnpmをインストールした後、CSSOをインストールできます。コマンドラインでは、:
<code>npm install -g csso</code>
CSSOを使用して-g
圧縮
CSSファイルを圧縮し、CSSOコマンドを実行してパラメーターとしてファイル名を渡すには:
完了後、CSSOは最適化されたCSSを標準出力、つまり現在の端子またはコマンドプロンプトウィンドウに印刷します。ただし、ほとんどの場合、出力をファイルに保存する必要があります。これを行うには、2番目のパラメーターをCSSO(圧縮ファイルの名前)に渡してください。たとえば、style.cssの圧縮バージョンをstyle.min.cssとして保存する場合は、次のコマンドを使用します。
<code>csso style.css</code>
<code>h1 { font: 16px / 1.5 'Helvetica Neue', arial, sans-serif; width: 80%; margin: 10px auto 0px; }</code>
宣言をオーバーライドします。また、連続宣言ブロックのセレクターとしてmargin-left
を再利用しました。最適化と圧縮の後、margin
を取得します
h1
<code>h1{font:16px/1.5 'Helvetica Neue',arial,sans-serif;width:80%;margin:10px auto 0}</code>
および#ff6600
プロパティを宣言(#f60
)にマージし、個別のmargin
セレクターブロックを1つに組み合わせます。 margin-left
margin: 20px 30px 20px 0
CSSOがCSSをどのように書き換えるかについて懐疑的である場合、そのリファクタリング機能を無効にすることができます。 h1
または
は--restructure-off
になります
-off
csso style.css style.min.css -off
今ではCSSは圧縮されていますが、最適化されていません。リファクタリングを無効にすると、CSSファイルが最小サイズに達することができなくなります。問題が発生しない限り、リファクタリングを無効にしないでください。
<code>npm install -g csso</code>
CSSのデバッグと最適化の詳細については、Tiffanyの本「CSS Master、Second Edition」をご覧ください。
関連記事:
CSSデバッグと最適化:コード品質ツール
CSSOは、CSSコードを分析し、さまざまな変換を適用することにより、サイズを縮小します。これらの変換には、不必要なスペースとコメントの削除、同じセレクターと属性のマージ、さらには属性値をより短い形式に書き換えることさえ含まれます。結果は、元のファイルとまったく同じ機能を機能させる、より小さく、より最適化されたCSSファイルになります。
CSSOは、コマンドラインツールとして、またはnode.jsモジュールとして使用できます。コマンドラインツールとして使用するには、NPM(ノードパッケージマネージャー)を使用してグローバルにインストールする必要があります。インストール後、コマンド「CSSO [入力ファイル] [出力ファイル]」を使用してCSSファイルでCSSOを実行できます。 node.jsモジュールとして使用するには、プロジェクトにローカルにインストールしてからスクリプトに参照する必要があります。
CSSOは、CSSファイルを最小限に抑えるだけでなく、CSS構造を最適化することもできます。これは、同じCSSセレクターをマージし、冗長プロパティを削除し、プロパティ値をより短いフォームに書き換えることさえできることを意味します。これにより、スペースとコメントのみを削除する他のCSSコンプレッサーと比較して、ファイルサイズが小さくなります。
CSSOは、機能に影響を与えることなくCSSを最適化するように設計されていますが、場合によってはCSSを破る可能性があります。これは通常、CSSOのエラーまたは不適切な使用によって引き起こされます。 CSSOを適用した後、すべてが適切に機能することを確認するために、必ずWebサイトを徹底的にテストしてください。
CSSOに問題がある場合は、実行時に「 - debug」オプションを使用して、そのパフォーマンスの詳細については使用できます。これは、CSSの問題のある領域を特定するのに役立ちます。また、必要に応じて、いつでも元のCSSファイルに復元できます。
はい、他のCSSプリプロセッサと一緒にCSSOを使用できます。ただし、最初にSASS以下のコードを通常のCSSにコンパイルしてから、CSSOを介して実行する必要があります。
CSSOは、機能を変更せずにCSSコードを最適化するため、生成されたCSSは、元のCSSをサポートするすべてのブラウザと互換性があるはずです。ただし、CSSOを適用した後、別のブラウザでWebサイトをテストして互換性を確保することをお勧めします。
はい、CSSOは最適化レベルを制御できるオプションを提供します。たとえば、構造的最適化を無効にしたり、必要に応じてコメントを保存したりできます。
はい、CSSOはオープンソースツールです。つまり、自由に使用できることを意味します。 Githubでソースコードを見つけることができ、必要に応じて開発に参加できます。
この応答は、画像形式と配置を維持し、意味を維持しながら独創性のテキストを書き直し、すべての要件に対処します。
以上がCSSのデバッグと最適化:CSSOによるミニフィッシュの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。