あなたのウェブサイトをスピードアップ
9303 ワード
目次
ブログ、ポートフォリオのユーザーエクスペリエンスを向上させる.そして、それが最適化に来るとき、私はひどく夢中です.だから私はさらに最適化する方法があるかどうかを見て
バンドルのサイズを削減、Googleのフォントを最適化、開発環境や生産環境のためのさまざまなバンドルを使用して、トリックカスタムフォントを利用する.
最後に、ここでは、最適化されたウェブサイトを参照してくださいhttp://ogzhanolguncu.com/ . まず最初にGTMETRIXスコアを見ましょう.
見られるように、パフォーマンスに関しては、スクイズアウトすることはあまりない.さて、これらのプロセスを段階的に分析し、このようなスコアを達成する方法を見てみましょう.
フォント
Webセーフフォント
あなたが得ることができる最善を目指している場合は、ブラウザのWebセーフフォント以外の何も使用して検討しないでください.ウェブ安全フォントによって
それで、彼らを優先させてくださいGoogle Web Fonts or Adobe Fonts .
フォント表示
@font-face {
font-family: ExampleFont;
src: url(/path/to/fonts/examplefont.woff) format('woff'), url(/path/to/fonts/examplefont.eot)
format('eot');
font-weight: 400;
font-style: normal;
font-display: optional;
unicode-range: U+0020-007F, U+0100-017F;
}
font-display
累積レイアウトシフト(CLS)ともちろん、パフォーマンスのための巨大な役割を果たしている.だから、最高のoptional
パフォーマンスとswap
をクリックします.Supported by all modern browsers.
Unicode範囲
指定
unicode-ranges
あらかじめ、必要な文字をダウンロードするだけでブラウザに指示します.我々は文字を必要としないのでもちろんアラビア語、ギリシャ語、ヘブライ語など🙂.
Supported by all modern browsers. See the list for unicodes.
プリロード
<link
href="/fonts/Avenir-Roman.ttf"
as="font"
type="font/ttf"
rel="preload"
crossorigin="anonymous"
/>
The preload
ページの読み込み後にすぐにこのフォントを必要とすることを意味するので、ブラウザのメインレンダリングの前に、最初にそれらをロードして他のものに移動しますキックス.したがって、
preload
ページのレンダリングをブロックしないでください.グーグルフォント
<link rel="preconnect" href="https://fonts.gstatic.com" />
<link
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap"
rel="stylesheet"
/>
Googleフォントを使用するときは常にpreconnect
最初に、ブラウザは、物事をより速くするために、起源とレシーバーの間の新しい接続を開始します.したがって、当社のウェブサイトのユーザーエクスペリエンスとスピードを向上させる.そして、
font-weights
もっと必要だからfont-weight
ダウンロードする大きなファイルを意味するので、賢明に選択します.イメージ
多くの画像についての話はありませんが、常に得ることができる小さな画像を目指しています.例えば、私の着陸ページのイメージは50 KB
それが得ることができる最小.
Use TinyPng to compress your images without losing quality.
代替パッケージの使用
このウェブサイトは、バンドルサイズを減少させる唯一の方法で動作しているので、使用することでしたPreact 反応のための3 KB代替.
あなたが私のようなバンドルとしてWebpackを使用しているならば、あなたはこれを実行するために手順に従うことができます.ところで、私は生産版のためにpreactを使用しています.
yarn add preact
webpack: (config, { dev, isServer }) => {
if (!dev && !isServer) {
Object.assign(config.resolve.alias, {
react: 'preact/compat',
'react-dom/test-utils': 'preact/test-utils',
'react-dom': 'preact/compat',
});
}
return config;
},
その例とは別に、また、Googleの灯台を介してパッケージを分析し、これは現在のものの代替パッケージを提供しています.未使用の依存
あなたの依存関係を見てください
package.json
, 見つけて、未使用のものを削除します.パッケージを使用しなくてもpackage.json
彼らはまだあなたの最終的な束の中にあるので、あなたの束をより大きくするので、それはロードを遅くします.
依存関係を最新に保つ
最新の依存関係で最新の状態にとどまることは最初に不必要に思えるかもしれません、しかし、時々、開発者は速度とサイズに関して彼らのパッケージを改善します.例えば、次に.JS 10のコアパッケージは16 %削減されました.コード分割戦略を導入した.これらはすべて追加されたので
CodeBaseへの組み込みコンポーネント.このイメージコンポーネントを導入する前に、私はイメージを使用するために外部パッケージを使用していました.私はすぐに私は次にアップグレードかつてこの1つを省略しました.JS 10 .
結論
Preload
あなたのフォントファイル.font-display: optional
or font-display: swap
パフォーマンスとCLSのために.unicode-range
必要です.font-weight
あなたはGoogleのフォントを必要としない.Reference
この問題について(あなたのウェブサイトをスピードアップ), 我々は、より多くの情報をここで見つけました https://dev.to/ogzhanolguncu/speeding-up-your-website-5c17テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol