JavaScript と CSS を最適化してウェブサイトのパフォーマンスを向上させる

JavaScript と CSS を最適化してウェブサイトのパフォーマンスを向上させる
<br /> 第 1 部と第 2 部では、Web サイトのパフォーマンス、ページ コンテンツ、サーバーを改善するためのいくつかのルールを紹介しました。さらに、JavaScript と CSS もページで頻繁に使用されます。これらを最適化することも、Web サイトのパフォーマンスを向上させる重要な側面です。
CS: ...
    スタイルシートを先頭に配置する CSS式の使用を避ける 外部JavaScriptとCSSを使用する JavaScriptとCSSを減らす @importの代わりに<link>を使用する フィルターの使用を避ける

JavaScript
    スクリプトをページの下部に配置する 外部のJavaScriptとCSSを使用する JavaScriptとCSSを削減する 重複するスクリプトを削除する DOMアクセスを減らす スマートなイベントハンドラーを開発する
17. スタイルシートを先頭に配置する Yahoo! のパフォーマンスを調査したところ、ドキュメントの <head /> 内にスタイルシートを配置するとページのダウンロードが高速化されることがわかりました。これは、スタイルシートを <head /> に配置すると、ページが段階的に読み込まれて表示されるようになるためです。
パフォーマンス重視のフロントエンド サーバーでは、多くの場合、ページが順番に読み込まれることが求められます。同時に、受信したコンテンツをブラウザが可能な限り表示してくれることも期待しています。これは、コンテンツが多いページや接続速度が遅いユーザーにとって特に重要です。進捗状況ポインターなどの視覚的なフィードバックをユーザーに返すことは、十分に研究され、文書化されています。私たちの研究では、HTML ページがプロセス ポインターです。ブラウザがファイル ヘッダー、ナビゲーション バー、トップ ロゴなどを順番に読み込むと、ページの読み込みを待っているユーザーへの視覚的なフィードバックとして機能します。これにより、全体的なユーザー エクスペリエンスが向上します。 Web ページ作成チュートリアル チャンネルのコンテンツを表示するには、ここをクリックしてください。スタイル シートをドキュメントの下部に配置すると、Internet Explorer を含む多くのブラウザーでコンテンツの整然としたレンダリングが停止するという問題があります。ブラウザは、スタイルの変更によってページ要素が再描画されるのを避けるためにレンダリングを一時停止します。ユーザーは空白のページに直面します。
HTML 仕様では、スタイル シートはページの <head /> セクションに配置する必要があることが明確に規定されています。「<a /> とは異なり、<link /> はドキュメントの <head /> セクションにのみ表示できますが、複数回使用できます。」白い画面が表示されたり、スタイルが設定されていないコンテンツが表示されたりするので、試してみる価値はありません。最善の解決策は、HTML 仕様に従ってドキュメントの <head /> にスタイルシートを読み込むことです。 CSS 式は、CSS プロパティを動的に設定する強力な (ただし危険な) 方法です。 Internet Explorer はバージョン 5 以降で CSS 式をサポートしています。次の例では、CSS式を使用して背景色を1時間ごとに切り替えることができます。18. CSS式の使用を避ける

背景色: 式( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" );
上記のように、式では JavaScript 式が使用されています。 CSS プロパティは、JavaScript 式の評価結果に基づいて設定されます。この表現方法は他のブラウザでは機能しないため、クロスブラウザ設計では Internet Explorer 専用に設定する方が便利です。
式の問題は、私たちが考えるよりも頻繁に評価されることです。ページを表示してズームするときだけでなく、ページをスクロールしたり、マウスを動かしたりしたときにも再計算する必要があります。 CSS 式にカウンターを追加すると、式が評価される頻度を追跡できます。ページ上でマウスを動かすだけで、簡単に 10,000 を超える計算を実行できます。
CSS 式の計算回数を減らす 1 つの方法は、初めて実行するときに結果を指定されたスタイル プロパティに割り当て、CSS 式の代わりにこのプロパティを使用する 1 回限りの式を使用することです。ページのライフサイクル中にスタイル プロパティを動的に変更する必要がある場合は、CSS 式の代わりにイベント ハンドラーを使用するのが有効な方法です。 CSS 式を使用する必要がある場合は、何千回も評価され、ページのパフォーマンスに影響を与える可能性があることに留意してください。
前のページ1 2 3 次のページ 続きを読む

<<:  IDEA2021 tomcat10 サーブレットの新しいバージョンの落とし穴

>>:  MySQL InnoDB ReplicaSet の簡単な紹介

推薦する

HTMLはフォームタグを使用して登録ページのサンプルコードを実装します。

ケースの説明: - ページ効果を実現するためにテーブルを使用する- ハイパーリンクを機能させたくない...

JavaScript のプロトタイプとプロトタイプチェーンの詳細な説明

目次プロトタイプチェーン図プロトタイピングに必須の知識プロトタイププロパティ(プロトタイプを表示) ...

mysqlは2つ以上のフィールドがNULLであるレコードを見つける問題を解決します

コアコード /*-------------------------------- 2つ以上のフィール...

MySQLクライアントとサーバーのプロトコルの解釈

目次MySQL クライアント/サーバー プロトコルMySQL サーバーから高いパフォーマンスを得る必...

NginxとLuaによるグレースケールリリースの実装

memcachedをインストールする yum インストール -y memcached #memcac...

MySQL インストール図の概要

MySQL 5.5 のインストールと設定方法のグラフィックチュートリアルMySQL 5.5 のインス...

JavaScript関数の詳細な紹介

任意の数のステートメントを関数を通じてカプセル化することができ、いつでもどこでも呼び出して実行できま...

CSSとHTMLを組み合わせる4つの方法

(1)各HTMLタグには属性スタイルがあり、CSSとHTMLを組み合わせている。 <div s...

CSS3 フィルター属性の使い方の紹介

1. はじめにフロントエンドページのアニメーション効果を記述する場合、filter 属性は多かれ少な...

DIV と画像の水平および垂直の中央揃えは複数のブラウザと互換性があります

最初のタイプ: 完全な CSS コントロール、レイヤーフローティング (ログインページに適しています...

HTML タグのメタ概要、HTML5 のヘッド メタ属性の概要

序文metaはhtml言語のhead領域にある補助タグです。おそらく、これらのコードは不要だと思うで...

国内SNSのホームページを比較・分析して得た経験をみんなで共有(写真)

この記事では、ソーシャル ウェブサイトのホームページを比較分析することで洞察を得て、ソーシャル ウェ...

Docker execは複数のコマンドを実行します

docker exec コマンドは、実行中のコンテナ内でコマンドを実行できます。 docker ex...

WeChatミニプログラムにナビゲーション機能を実装する方法

1. レンダリング2. 操作手順1. テンセントマップキーを申請する - 住所2. ミニプログラムの...