ã¦ã§ãããã©ã¼ãã³ã¹ã®ãã¹ããã©ã¯ãã£ã¹ã¨ãã³ã
ã¦ã§ããµã¤ããå¯è½ãªéãã®ããã©ã¼ãã³ã¹ãçºæ®ãã¹ãçç±ã¯ããããããã¾ãã 以ä¸ã«ãåãããã¯ã®è©³ç´°æ å ±ãæä¾ããããã®ãªã³ã¯ä»ãã®ãã¹ããã©ã¯ãã£ã¹ããã¼ã«ãAPI ã®ç°¡åãªã¬ãã¥ã¼ã示ãã¾ãã
ãã¹ããã©ã¯ãã£ã¹
- ã¾ãã¯ããã©ã¦ã¶ã¼ã®ã¯ãªãã£ã«ã«ã¬ã³ããªã³ã°ãã¹ã«ã¤ãã¦å¦ã³ã¾ãããããããçè§£ãããã¨ã§ãã¦ã§ããµã¤ãã®ããã©ã¼ãã³ã¹ãæ¹åããæ¹æ³ãææ¡ã§ããããã«ãªãã¾ãã
- ãªã½ã¼ã¹ãã³ããä¾ãã°
rel=preconnectãrel=dns-prefetchãrel=prefetchãrel=preloadã使ç¨ãã¾ãã - JavaScript ã®ãµã¤ãºã[æå°]ã«æãã¦ãã ãããç¾å¨ã®ãã¼ã¸ã§å¿ è¦ã¨ãªãåã ã JavaScript ã使ç¨ããããã«ãã¦ãã ããã
- CSS ããã©ã¼ãã³ã¹è¦å
- HTTP/2 ããµã¼ãã¼ï¼ã¾ã㯠CDNï¼ã§ä½¿ç¨ãã¾ãã
- èªã¿è¾¼ã¿æéãå¤§å¹ ã«ç縮ã§ãããªã½ã¼ã¹ã«ã¯ãCDN ããå©ç¨ãã ããã
- ãªã½ã¼ã¹ã gzipãBrotliãZopfli ãªã©ã使ç¨ãã¦å§ç¸®ãã¦ãã ããã
- ç»åã®æé©åï¼å¯è½ã§ããã° CSS ã¢ãã¡ã¼ã·ã§ã³ã¾ã㯠SVG ã使ç¨ããï¼ã
- ãã¥ã¼ãã¼ãå¤ã«ããã¢ããªã±ã¼ã·ã§ã³ã®ä¸é¨ãé
å»¶èªã¿è¾¼ã¿ãã¾ãããã®å ´åã¯ãSEOã®ããã®ä»£æ¿çï¼ä¾ï¼ããããã©ãã£ãã¯åãã«ãã¼ã¸å
¨ä½ãã¬ã³ããªã³ã°ããï¼ãç¨æãã¦ãã ãããä¾ãã°ã
loading屿§ã<img>è¦ç´ ã«ä½¿ç¨ããããåæ§ã«<iframe>ã<video>ã<audio>è¦ç´ ã«è¨å®ããããããªã©ã§ãã - åæã«ãã¦ã¼ã¶ã¼ã«ã¨ã£ã¦ä½ãæ¬å½ã«éè¦ãªã®ããçè§£ãããã¨ã極ãã¦éè¦ã§ããããã¯å³å¯ãªã¿ã¤ãã³ã°ã§ã¯ãªããã¦ã¼ã¶ã¼ã®ä½æã§ãããã¨ãããã¾ãã
å³å¹æ§ã®ããæ¹æ³
>CSS
ã¦ã§ãããã©ã¼ãã³ã¹ã®æ¬è³ªã¯ãã¦ã¼ã¶ã¼ä½é¨ã¨ç¥è¦çããã©ã¼ãã³ã¹ã«ããã¾ããã¯ãªãã£ã«ã«ã¬ã³ããªã³ã°ãã¹ã®ããã¥ã¡ã³ãã§å¦ãã ããã«ã徿¥ã® rel="stylesheet" 屿§ãæã¤ link ã¿ã°ã§ CSS ãèªã¿è¾¼ãã¨ãåæå¦çã¨ãªããã¬ã³ããªã³ã°ããããã¯ããã¦ãã¾ãã¾ããã¬ã³ããªã³ã°ã妨ãã CSS ãé¤å»ãããã¨ã§ããã¼ã¸ã®ã¬ã³ããªã³ã°ãæé©åãã¾ãããã
CSS ãéåæã§èªã¿è¾¼ãã«ã¯ãã¡ãã£ã¢ç¨®å¥ã print ã«è¨å®ããèªã¿è¾¼ã¾ããå¾ã« all ã«å¤æ´ãã¾ããããã«ã¯ JavaScript ãè¦æ±ãããããã徿¥ã®ãã©ã¼ã«ããã¯ãå«ã <noscript> ã¿ã°ãè¨è¼ãããã¨ãéè¦ã§ãã
<link
id="my-stylesheet"
rel="stylesheet"
href="/path/to/my.css"
media="print" />
<noscript><link rel="stylesheet" href="/path/to/my.css" /></noscript>
const stylesheet = document.getElementById("my-stylesheet");
stylesheet.addEventListener("load", () => {
stylesheet.media = "all";
});
ãã®ææ³ã®æ¬ ç¹ã¯ãã¹ã¿ã¤ã«ãé©ç¨ããã¦ããªãããã¹ãã䏿çã«è¡¨ç¤ºããã¦ãã¾ãã㨠(FOUT) ã§ããããã解決ããæãç°¡åãªæ¹æ³ã¯ãã¹ã¯ãã¼ã«ããåã«ãã©ã¦ã¶ã¼ã®ãã¥ã¼ãã¼ãå ã«è¡¨ç¤ºãããã³ã³ãã³ãï¼ã¹ã¯ãã¼ã«ããã«è¦ããç¯å²ï¼ã«å¿ è¦ãª CSS ãã¤ã³ã©ã¤ã³ã§è¨è¿°ãããã¨ã§ããããã«ãããCSS ãã¡ã¤ã«ã®èªã¿è¾¼ã¿ãä¸è¦ã«ãªããããç¥è¦çããã©ã¼ãã³ã¹ãæ¹åããã¾ãã
<style>
/* ããã« CSS ãæ¿å
¥ */
</style>
JavaScript
async ã¾ã㯠defer 屿§ã使ç¨ããããJavaScript ãªã½ã¼ã¹ããã¼ã¸ã® DOM è¦ç´ ã®å¾ã«é
ç½®ãããã¨ã§ãJavaScript ã«ããã¬ã³ããªã³ã°ã®ãããã¯ãé¿ãããã¨ãã§ãã¾ããJavaScript ã¯ãDOM ããªã¼ä¸ã§ script ã¿ã°ã®å¾ã«ç¾ããè¦ç´ ã®ã¬ã³ããªã³ã°ã®ã¿ããããã¯ãã¾ãã
ã¦ã§ããã©ã³ã
EOT ã TTF å½¢å¼ã¯ãããã©ã«ãã§å§ç¸®ããã¾ããããããã®ãã¡ã¤ã«å½¢å¼ã«ã¯ãGZIPãBrotliãªã©ã®å§ç¸®ãé©ç¨ãã¦ãã ãããWOFF ã WOFF2 ããå©ç¨ãã ããããããã®å½¢å¼ã«ã¯ãå§ç¸®æ©è½ãçµã¿è¾¼ã¾ãã¦ãã¾ãã
@font-face å ã§ã¯ãfont-display: swap ãæå®ãã¦ãã ãããfont-display ã swap ã«æå®ãããã¨ã§ããã©ã¦ã¶ã¼ã¯ã¬ã³ããªã³ã°ã䏿ãããå®ç¾©ããã代æ¿ã®ã·ã¹ãã ãã©ã³ãã使ç¨ãã¾ããã¦ã§ããã©ã³ãã«ã§ããã ãä¸è´ããããããã©ã³ãã®å¤ªãã調æ´ãã¦ãã ããã
ã¢ã¤ã³ã³ã¦ã§ããã©ã³ã
å¯è½ã§ããã°ãã¢ã¤ã³ã³ç¨ã¦ã§ããã©ã³ãã¯é¿ããå§ç¸®ããã SVG ã使ç¨ãã¦ãã ãããããã«æé©åããã«ã¯ãHTML ãã¼ã¯ã¢ããå ã« SVG ãã¼ã¿ãã¤ã³ã©ã¤ã³ã§åãè¾¼ãã§ä½¿ç¨ãã¦ãã ããã
ãã¼ã«
- Firefox éçºè ãã¼ã« ã使ç¨ãã¦ããµã¤ãã®ããã©ã¼ãã³ã¹ãåæããæ¹æ³ãå¦ã³ã¾ãããã
- PageSpeed Insights ã使ç¨ããã¨ããã¼ã¸ãåæããããã©ã¼ãã³ã¹ã®æ¹åã®ããã®ä¸è¬çãªãã³ããå¾ããã¨ãã§ãã¾ãã
- Lighthouse ã使ç¨ããã¨ããµã¤ãã®ããã©ã¼ãã³ã¹ãSEOãã¢ã¯ã»ã·ããªãã£ãªã©ããã¾ãã¾ãªå´é¢ã«ã¤ãã¦è©³ç´°ãªåæçµæãå¾ããã¨ãã§ãã¾ãã
- WebPageTest.org ã使ç¨ãã¦ããã¼ã¸ã®èªã¿è¾¼ã¿é度ããã¹ããã¦ãã ãããããã§ã¯ããã¾ãã¾ãªå®æ©ã¿ã¤ããå ´æãè¨å®ãã¦ãã¹ããè¡ããã¨ãã§ãã¾ãã
- å®éã®ã¦ã¼ã¶ã¼ææ¨ãæ°å¤åãã Chrome ã¦ã¼ã¶ã¼ã¨ã¯ã¹ããªã¨ã³ã¹ã¬ãã¼ããã試ããã ããã
- ããã©ã¼ãã³ã¹äºç®ãå®ç¾©ãã¾ãããã
API
- boomerang ã©ã¤ãã©ãªã¼ã使ç¨ãã¦ãã¦ã¼ã¶ã¼ææ¨ãåéãã¾ãã
- ãããã¯ãwindow.performance.timing ãç´æ¥åå¾ãã¦éè¨ãã¾ã
é¿ããã¹ããã¨ï¼æªãç¿æ £ï¼
- ãã¹ã¦ããã¦ã³ãã¼ããã
- æªå§ç¸®ã®ã¡ãã£ã¢ãã¡ã¤ã«ã使ç¨ãã