CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®ã€ã³ããŒããæé©åããèªã¿èŸŒã¿ããã©ãŒãã³ã¹ãåäžãããŸããã¬ã€ã€ãŒã®æ§é åãšåªå é äœä»ãã®æ¹æ³ãåŠã³ãããé«éã§å¹ççãªã°ããŒãã«ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãå®çŸããŸãããã
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®ã€ã³ããŒãæé©åïŒã°ããŒãã«ãªã¬ã€ã€ãŒèªã¿èŸŒã¿ããã©ãŒãã³ã¹ã®åäž
ã«ã¹ã±ãŒãã¬ã€ã€ãŒã¯ãçŸä»£ã®CSSã«ããã匷åãªæ©èœã§ãããéçºè ã¯ããã«ãã£ãŠã¹ã¿ã€ã«ãé©çšãããé åºãå¶åŸ¡ã§ããŸããããã«ãããç¹ã«å€§èŠæš¡ãªãããžã§ã¯ãããµãŒãããŒãã£ã®ã©ã€ãã©ãªãæ±ãéã«ãããä¿å®æ§ãé«ãäºæž¬å¯èœãªã¹ã¿ã€ã«ã·ãŒããå®çŸã§ããŸããããããä»ã®åŒ·åãªããŒã«ãšåæ§ã«ãã«ã¹ã±ãŒãã¬ã€ã€ãŒãããã©ãŒãã³ã¹ã®ããã«ããã¯ãé¿ããããã«æ éã«äœ¿çšããå¿ èŠããããŸãããã®èšäºã§ã¯ãCSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®ã€ã³ããŒããæé©åããèªã¿èŸŒã¿ããã©ãŒãã³ã¹ãåäžãããã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã«ã¹ã ãŒãºãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããæ¹æ³ãæ¢ããŸãã
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®çè§£
æé©åã«å ¥ãåã«ãCSSã«ã¹ã±ãŒãã¬ã€ã€ãŒãäœã§ãããã©ã®ããã«æ©èœããã®ããç°¡åã«æ¯ãè¿ã£ãŠã¿ãŸãããã
ã«ã¹ã±ãŒãã¬ã€ã€ãŒã䜿çšãããšãCSSã«ãŒã«ãååä»ãã®ã¬ã€ã€ãŒã«ã°ã«ãŒãåããããããæç€ºçã«é åºä»ããããšãã§ããŸãããããã®ã¬ã€ã€ãŒã®é åºãã«ã¹ã±ãŒãã®åªå é äœã決å®ããŸããã€ãŸããåŸã§å®£èšãããã¬ã€ã€ãŒã®ã¹ã¿ã€ã«ããå ã«å®£èšãããã¬ã€ã€ãŒã®ã¹ã¿ã€ã«ãããåªå ãããŸããããã¯ãäž»ã«è©³çŽ°åºŠãšãœãŒã¹é ãåªå é äœã決å®ããŠããåŸæ¥ã®CSSã«ã¹ã±ãŒãããã®å€§ããªå€æŽç¹ã§ãã
以äžã«åºæ¬çãªäŸã瀺ããŸãã
@layer base, components, overrides;
ãã®äŸã§ã¯ãbaseãcomponentsãoverridesãšãã3ã€ã®ã¬ã€ã€ãŒã宣èšããŸãããoverridesã¬ã€ã€ãŒã®ã¹ã¿ã€ã«ã¯componentsã¬ã€ã€ãŒã®ã¹ã¿ã€ã«ãããåªå
ãããåæ§ã«componentsã¬ã€ã€ãŒã®ã¹ã¿ã€ã«ã¯baseã¬ã€ã€ãŒã®ã¹ã¿ã€ã«ãããåªå
ãããŸãã
ããã€ãã®æ¹æ³ã§ã¬ã€ã€ãŒã«ã¹ã¿ã€ã«ã远å ã§ããŸãã以äžã«äŸãæããŸãã
@layerã«ãŒã«å ã«çŽæ¥èšè¿°ããæ¹æ³ïŒ- ã¹ã¿ã€ã«ã·ãŒããã€ã³ããŒãããéã«
layer()颿°ã䜿çšããæ¹æ³ïŒ
@layer base {
body {
font-family: sans-serif;
margin: 0;
}
}
@import url("reset.css") layer(base);
@import url("components.css") layer(components);
@import url("theme.css") layer(overrides);
@importãããã©ãŒãã³ã¹ã«äžãã圱é¿
@importã«ãŒã«ã¯ãããã©ãŒãã³ã¹äžã®çç±ããäžè¬çã«æšå¥šãããŸããããã©ãŠã¶ã@importã«ãŒã«ã«ééãããšãçŸåšã®ã¹ã¿ã€ã«ã·ãŒãã®è§£æã忢ããã€ã³ããŒããããã¹ã¿ã€ã«ã·ãŒããååŸããŠè§£æãããã®åŸã§å
ã®ã¹ã¿ã€ã«ã·ãŒãã®è§£æãåéããå¿
èŠããããŸããããã«ãããç¹ã«ã€ã³ããŒããããã¹ã¿ã€ã«ã·ãŒãã倧ããå Žåãç°ãªããµãŒããŒã«ããå Žåã«ãããŒãžã®ã¬ã³ããªã³ã°ãé
å»¶ããå¯èœæ§ããããŸãããã€ãŠãã©ãŠã¶ã¯ããããçŽåã«ååŸããŠããããç¹ã«åé¡ã§ããããã»ãšãã©ã®çŸä»£ã®ãã©ãŠã¶ã¯å¯èœãªéãã€ã³ããŒãã䞊åã§ååŸããããã«ãªããŸããã
ã«ã¹ã±ãŒãã¬ã€ã€ãŒèªäœã@importã«ãŒã«ãé
ãããããã§ã¯ãããŸããããæ³šæããŠäœ¿çšããªããšããã©ãŒãã³ã¹åé¡ãæªåãããå¯èœæ§ããããŸãã倿°ã®ã¬ã€ã€ãŒã宣èšããåã¬ã€ã€ãŒã«ã¹ã¿ã€ã«ã·ãŒããã€ã³ããŒããããšãHTTPãªã¯ãšã¹ãã®æ°ãšå
šäœã®è§£ææéãå¢å ããå¯èœæ§ããããããã¯äžçã®å€ãã®å°åã§äžè¬çãªãå€ããã©ãŠã¶ãäœéãªãããã¯ãŒã¯æ¥ç¶ãæ±ãå Žåã«ç¹ã«é¡èã§ãã
ã«ã¹ã±ãŒãã¬ã€ã€ãŒã®ã€ã³ããŒãã®æé©åïŒã°ããŒãã«ããã©ãŒãã³ã¹ã®ããã®æŠç¥
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®ã€ã³ããŒããæé©åããäžçäžã®ãŠãŒã¶ãŒã®èªã¿èŸŒã¿ããã©ãŒãã³ã¹ãåäžãããããã®æŠç¥ãããã€ã玹ä»ããŸãã
1. ã¬ã€ã€ãŒã®æ°ãæå°éã«æãã
åã¬ã€ã€ãŒã¯ã«ã¹ã±ãŒãã«è€éããå ããè§£ææéãå¢å ãããå¯èœæ§ããããŸããäžèŠãªã¬ã€ã€ãŒã®äœæã¯é¿ããŠãã ããããããžã§ã¯ãã®ããŒãºãé©åã«æºããæå°éã®ã¬ã€ã€ãŒã»ãããç®æããŸãããã
ãã¹ãŠã®ã³ã³ããŒãã³ãã«å¯ŸããŠçްããã¬ã€ã€ãŒãäœæãã代ããã«ãé¢é£ããã¹ã¿ã€ã«ãããåºç¯ãªã¬ã€ã€ãŒã«ã°ã«ãŒãåããããšãæ€èšããŠãã ãããäŸãã°ãbuttonsãformsãnavigationã®ãããªã¬ã€ã€ãŒãæã€ä»£ããã«ãåäžã®componentsã¬ã€ã€ãŒãæã€ããšãã§ããŸãã
2. ã¯ãªãã£ã«ã«ãªã¬ã€ã€ãŒãåªå ãã
ã¬ã€ã€ãŒã宣èšããé åºã¯ããŠã§ããµã€ãã®äœæããã©ãŒãã³ã¹ã«å€§ããªåœ±é¿ãäžããå¯èœæ§ããããŸããããŒãžã®åæãã¥ãŒã®ã¬ã³ããªã³ã°ã«äžå¯æ¬ ãªã¹ã¿ã€ã«ãã€ãŸãã¯ãªãã£ã«ã«ãªã¹ã¿ã€ã«ãå«ãã¬ã€ã€ãŒãåªå ããã§ããã ãæ©ãèªã¿èŸŒãããã«ããŠãã ããã
äŸãã°ããã©ã³ããåºæ¬çãªã¬ã€ã¢ãŠããªã©ã®åºç€çãªã¹ã¿ã€ã«ãå«ãbaseã¬ã€ã€ãŒããç¹å®ã®UIèŠçŽ ã®ã¹ã¿ã€ã«ãå«ãcomponentsã¬ã€ã€ãŒã®åã«èªã¿èŸŒãããšãæ€èšãããšè¯ãã§ãããã
3. ããªããŒããã³ãã䜿çšãã
ããªããŒããã³ãã¯ããã©ãŠã¶ã«å¯ŸããŠãããŒãžèªã¿èŸŒã¿ããã»ã¹ã®æ©ã段éã§ã¹ã¿ã€ã«ã·ãŒããå«ããªãœãŒã¹ã®ååŸãéå§ããããã«æç€ºã§ããŸããããã«ãããç¹ã«@importã䜿çšããŠã€ã³ããŒããããã¹ã¿ã€ã«ã·ãŒãã®å ŽåãCSSã®èªã¿èŸŒã¿ãšè§£æã«ãããæéãççž®ããã®ã«åœ¹ç«ã¡ãŸãã
<link rel="preload">ã¿ã°ã䜿çšããŠã¹ã¿ã€ã«ã·ãŒããããªããŒãã§ããŸãããªãœãŒã¹ãã¹ã¿ã€ã«ã·ãŒãã§ããããšã瀺ãããã«ãå¿
ãas="style"屿§ãæå®ããŠãã ããã
äŸïŒ
<link rel="preload" href="base.css" as="style">
<link rel="preload" href="components.css" as="style">
<link rel="preload" href="overrides.css" as="style">
ããã«ããããã©ãŠã¶ã¯ã¡ã€ã³ã®ã¹ã¿ã€ã«ã·ãŒãã§@importæã«ééããåã§ãã£ãŠãããããã®CSSãã¡ã€ã«ãã§ããã ãæ©ãããŠã³ããŒããå§ããããæç€ºãããŸãã
4. ã¹ã¿ã€ã«ã·ãŒãã®ãã³ãã«ãšæå°å
HTTPãªã¯ãšã¹ãã®æ°ãšã¹ã¿ã€ã«ã·ãŒãã®ãµã€ãºãæžããããšã¯ãèªã¿èŸŒã¿ããã©ãŒãã³ã¹ãåäžãããããã«äžå¯æ¬ ã§ããã¹ã¿ã€ã«ã·ãŒããåäžã®ãã¡ã€ã«ã«ãã³ãã«ãã空çœãã³ã¡ã³ããªã©ã®äžèŠãªæåãåé€ããããã«æå°åïŒminifyïŒããŠãã ããã
CSSã®ãã³ãã«ãšæå°åã«ã¯ã次ã®ãããªå€ãã®ããŒã«ãå©çšå¯èœã§ãã
- Webpack
- Parcel
- Rollup
- CSSNano
ã¹ã¿ã€ã«ã·ãŒãããã³ãã«ããããšã§ãCSSã®èªã¿èŸŒã¿ã«å¿ èŠãªHTTPãªã¯ãšã¹ãã®æ°ãæžå°ããŸããã¹ã¿ã€ã«ã·ãŒããæå°åããããšã§ãCSSãã¡ã€ã«ã®ãµã€ãºãå°ãããªããããŠã³ããŒãæéãççž®ãããŸãã
5. ã¯ãªãã£ã«ã«CSSã®ã€ã³ã©ã€ã³åãæ€èšãã
æé©ãªããã©ãŒãã³ã¹ãåŸãã«ã¯ãã¯ãªãã£ã«ã«CSSïŒabove-the-foldã³ã³ãã³ãã®ã¬ã³ããªã³ã°ã«å¿ èŠãªCSSïŒãHTMLã«çŽæ¥ã€ã³ã©ã€ã³åããããšãæ€èšããŠãã ãããããã«ããããã©ãŠã¶ãã¯ãªãã£ã«ã«CSSãååŸããããã«è¿œå ã®HTTPãªã¯ãšã¹ããè¡ãå¿ èŠããªããªãããŠã§ããµã€ãã®äœæããã©ãŒãã³ã¹ãå€§å¹ ã«åäžããŸãã
ã¯ãªãã£ã«ã«CSSãç¹å®ããã€ã³ã©ã€ã³åããã®ã«åœ¹ç«ã€ããŒã«ã«ã¯ã次ã®ãããªãã®ããããŸãã
- Critical
- Penthouse
ãã ããã€ã³ã©ã€ã³åãããCSSã®ãµã€ãºã«ã¯æ³šæããŠãã ãããã€ã³ã©ã€ã³CSSã倧ãããªãããããšãããŒãžå šäœã®èªã¿èŸŒã¿æéã«æªåœ±é¿ãäžããå¯èœæ§ããããŸãã
6. HTTP/2ãšBrotliå§çž®ã䜿çšãã
HTTP/2ã¯ãåäžã®TCPæ¥ç¶ãä»ããŠè€æ°ã®ãªã¯ãšã¹ããéä¿¡ã§ãããããè€æ°ã®ã¹ã¿ã€ã«ã·ãŒããèªã¿èŸŒãããã©ãŒãã³ã¹ãå€§å¹ ã«åäžãããããšãã§ããŸããBrotliå§çž®ã¯ãgzipãããåªããå§çž®çãæäŸããææ°ã®å§çž®ã¢ã«ãŽãªãºã ã§ãããCSSãã¡ã€ã«ã®ãµã€ãºãããã«åæžã§ããŸãã
ãµãŒããŒãHTTP/2ãšBrotliå§çž®ã䜿çšããããã«èšå®ãããŠããããšã確èªããŠãã ãããã»ãšãã©ã®çŸä»£çãªWebãµãŒããŒã¯ãããã©ã«ãã§ãããã®æè¡ããµããŒãããŠããŸãã
7. CSSã¢ãžã¥ãŒã«ã«ããã³ãŒãåå²ïŒäžçŽïŒ
éåžžã«å€§èŠæš¡ãªãããžã§ã¯ããç¹ã«ReactãVueãAngularãªã©ã®ã³ã³ããŒãã³ãããŒã¹ã®ãã¬ãŒã ã¯ãŒã¯ã䜿çšããŠããå Žåã¯ãCSSã¢ãžã¥ãŒã«ã®äœ¿çšãæ€èšããŠãã ãããCSSã¢ãžã¥ãŒã«ã䜿çšãããšãCSSã¹ã¿ã€ã«ãåã ã®ã³ã³ããŒãã³ãã«ã¹ã³ãŒãããããšãã§ããCSSã®ç«¶åãé²ããä¿å®æ§ãåäžãããããšãã§ããŸãããŸããã³ãŒãåå²ãå¯èœã«ãªããç¹å®ã®ã³ã³ããŒãã³ããããŒãžã«å¿ èŠãªCSSã®ã¿ãèªã¿èŸŒãããšãã§ããŸãã
CSSã¢ãžã¥ãŒã«ã¯éåžžãã«ãããã»ã¹ãå¿ èŠãšããŸãããããã©ãŒãã³ã¹ãšä¿å®æ§ã®é¢ã§ã®ã¡ãªããã¯å€§ãããã®ãšãªããŸãã
8. CSSã®éåæé ä¿¡ïŒäžçŽïŒ
loadCSSãªã©ã®æè¡ã§å®çŸãããããšãå€ãCSSã®éåæé ä¿¡ã¯ãããŒãžã®ã¬ã³ããªã³ã°ããããã¯ããã«ã¹ã¿ã€ã«ã·ãŒããèªã¿èŸŒãããšãå¯èœã«ããŸããããã¯äœæããã©ãŒãã³ã¹ãåäžãããããã®åŒ·åãªãã¯ããã¯ã§ãããã¹ã¿ã€ã«æªé©çšã®ã³ã³ãã³ããäžç¬è¡šç€ºãããïŒFOUCïŒã®ãé¿ããããã«æ éãªå®è£ ãå¿ èŠã§ãã
ã«ã¹ã±ãŒãã¬ã€ã€ãŒèªäœã¯éåæèªã¿èŸŒã¿ãçŽæ¥å®è£ ãããã®ã§ã¯ãããŸãããããã®ãããªæŠç¥ã«çµã¿èŸŒãããšãã§ããŸããäŸãã°ãããŒã¹ã¬ã€ã€ãŒãéåæã§èªã¿èŸŒã¿ãæ®ãã®ã¬ã€ã€ãŒãåæçã«ã€ã³ããŒããããšãã£ãããšãèããããŸãã
9. ãã©ãŠã¶ã®ãã£ãã·ã¥ã掻çšãã
é©åã«èšå®ããããã©ãŠã¶ãã£ãã·ã¥ã¯ããŠã§ããµã€ãã®ããã©ãŒãã³ã¹ãåäžãããããã«äžå¯æ¬ ã§ãããµãŒããŒãCSSãã¡ã€ã«ã«å¯ŸããŠé©åãªãã£ãã·ã¥ããããŒïŒäŸïŒCache-ControlãExpiresïŒãéä¿¡ããŠããããšã確èªããŠãã ãããé·ããã£ãã·ã¥æå¹æéãèšå®ããããšã§ããã©ãŠã¶ã¯CSSãã¡ã€ã«ãããŒã«ã«ã«ä¿åããå蚪åæã®åããŠã³ããŒãã®å¿
èŠæ§ãæžããããšãã§ããŸãã
CSSãã¡ã€ã«ãããŒãžã§ãã³ã°ããïŒäŸãã°ããã¡ã€ã«åã«style.css?v=1.2.3ã®ããã«ããŒãžã§ã³çªå·ä»ãã®ã¯ãšãªæååã远å ããïŒããšã§ã倿Žããã£ãå Žåã«ãã©ãŠã¶ã«æŽæ°ããããã¡ã€ã«ã匷å¶çã«ããŠã³ããŒãããã€ã€ã倿ŽãããŠããªããã¡ã€ã«ã«ã€ããŠã¯ãã£ãã·ã¥ã掻çšãç¶ããããšãã§ããŸãã
10. ã³ã³ãã³ãããªããªãŒãããã¯ãŒã¯ïŒCDNïŒ
CDNïŒã³ã³ãã³ãããªããªãŒãããã¯ãŒã¯ïŒã䜿çšãããšãç¹ã«ãªãªãžã³ãµãŒããŒããå°ççã«é¢ããŠãããŠãŒã¶ãŒã«å¯ŸããŠãCSSãã¡ã€ã«ã®èªã¿èŸŒã¿é床ãå€§å¹ ã«åäžãããããšãã§ããŸããCDNã¯CSSãã¡ã€ã«ãäžçäžã®è€æ°ã®ãµãŒããŒã«åæ£ããããŠãŒã¶ãŒãæãè¿ããµãŒããŒããããŠã³ããŒãã§ããããã«ããŸãã
å€ãã®CDNã¯ã次ã®ãããªè¿œå ã®ããã©ãŒãã³ã¹æé©åãæäŸããŠããŸãã
- å§çž®
- æå°å
- HTTP/2ãµããŒã
- ãã£ãã·ã³ã°
人æ°ã®CDNãããã€ããŒã«ã¯ã以äžã®ãããªãã®ããããŸãã
- Cloudflare
- Amazon CloudFront
- Akamai
- Fastly
11. 宿çãªããã©ãŒãã³ã¹ç£æ»
ãŠã§ãããã©ãŒãã³ã¹ã¯äžåºŠããã®ã¿ã¹ã¯ã§ã¯ãªããç¶ç¶çãªããã»ã¹ã§ããGoogle PageSpeed InsightsãWebPageTestãLighthouseãªã©ã®ããŒã«ã䜿çšããŠãŠã§ããµã€ãã®ããã©ãŒãã³ã¹ã宿çã«ç£æ»ããæ¹åã®äœå°ãããé åãç¹å®ããŠãã ããããããã®ããŒã«ã¯ããŠã§ããµã€ãã®èªã¿èŸŒã¿é床ã«é¢ãã貎éãªæŽå¯ãæäŸããæé©åã®ããã®å ·äœçãªæšå¥šäºé ãæç€ºããŠãããŸãã
ã·ããªãªäŸïŒã°ããŒãã«ãªEã³ããŒã¹ãµã€ã
åç±³ããšãŒããããã¢ãžã¢ã®ãŠãŒã¶ãŒãã¿ãŒã²ãããšããã°ããŒãã«ãªEã³ããŒã¹ãµã€ããèããŠã¿ãŸãããããã®ãµã€ãã¯ãããŒã¹ã¹ã¿ã€ã«ãã³ã³ããŒãã³ããããŒãããªãŒããŒã©ã€ãçšã«è€æ°ã®ã¬ã€ã€ãŒãæã€è€éãªCSSã¢ãŒããã¯ãã£ã䜿çšããŠããŸãã
ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã®ããã«èªã¿èŸŒã¿ããã©ãŒãã³ã¹ãæé©åããããã«ããã®ãµã€ãã¯ä»¥äžã®æŠç¥ãå®è£ ããããšãã§ããŸãã
- è§£ææéãççž®ããããã«ã¬ã€ã€ãŒã®æ°ãæå°éã«æããã
- ãã©ã³ããã¬ã€ã¢ãŠããªã©ã®å¿ é ã¹ã¿ã€ã«ãå«ãããŒã¹ã¬ã€ã€ãŒãåªå ããããŒãžã®åæãã¥ãŒãè¿ éã«ã¬ã³ããªã³ã°ãããããã«ããã
- ããªããŒããã³ãã䜿çšããŠãããŒãžèªã¿èŸŒã¿ããã»ã¹ã®æ©ã段éã§ã¹ã¿ã€ã«ã·ãŒãã®ååŸãéå§ãããããã©ãŠã¶ã«æç€ºããã
- ã¹ã¿ã€ã«ã·ãŒãããã³ãã«ããã³æå°åããŠãHTTPãªã¯ãšã¹ãã®æ°ãšCSSãã¡ã€ã«ã®ãµã€ãºãåæžããã
- above-the-foldã³ã³ãã³ãã®ããã«è¿œå ã®HTTPãªã¯ãšã¹ããäžèŠã«ãããããã¯ãªãã£ã«ã«CSSãã€ã³ã©ã€ã³åããã
- HTTP/2ãšBrotliå§çž®ã䜿çšããŠãCSSãã¡ã€ã«ã®ãµã€ãºãããã«åæžããã
- CDNãæŽ»çšããŠãäžçäžã®è€æ°ã®ãµãŒããŒã«CSSãã¡ã€ã«ãé ä¿¡ããã
- ãŠã§ããµã€ãã®ããã©ãŒãã³ã¹ã宿çã«ç£æ»ããæ¹åç¹ãèŠã€ããã
ããã«ããã®ãµã€ãã§ã¯ãŠãŒã¶ãŒã®æåšå°ã«åºã¥ããŠæ¡ä»¶ä»ãèªã¿èŸŒã¿ãå®è£ ããããšãã§ããŸããäŸãã°ããŠãŒã¶ãŒãäœéãªãããã¯ãŒã¯æ¥ç¶ã®å°åã«ããå Žåããµã€ãã¯ããå°ãªãã¬ã€ã€ãŒãšæ©èœãæã€ç°¡ç¥åãããããŒãžã§ã³ã®CSSãæäŸããããšãã§ããŸããããã«ãããäœéãªæ¥ç¶ã§ããµã€ããè¿ éã«èªã¿èŸŒãŸããè¯å¥œãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸãããããšãä¿èšŒã§ããŸãã
çµè«
CSSã«ã¹ã±ãŒãã¬ã€ã€ãŒã®ã€ã³ããŒããæé©åããããšã¯ãç¹ã«ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã«å¯ŸããŠãé«éã§å¹ççãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããããã«äžå¯æ¬ ã§ããã¬ã€ã€ãŒã®æ°ãæå°éã«æããã¯ãªãã£ã«ã«ãªã¬ã€ã€ãŒãåªå ããããªããŒããã³ãã䜿çšããã¹ã¿ã€ã«ã·ãŒãããã³ãã«ããã³æå°åãããã©ãŠã¶ã®ãã£ãã·ã¥ãšCDNãæŽ»çšããããšã§ããŠã§ããµã€ãã®èªã¿èŸŒã¿ããã©ãŒãã³ã¹ãå€§å¹ ã«åäžãããäžçäžã®ãŠãŒã¶ãŒã«ã¹ã ãŒãºãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸã§ããŸãããŠã§ãããã©ãŒãã³ã¹ã¯ç¶ç¶çãªããã»ã¹ã§ããããšãå¿ããªãã§ãã ããããããã£ãŠã宿çã«ãŠã§ããµã€ãã®ããã©ãŒãã³ã¹ãç£æ»ããå¿ èŠã«å¿ããŠèª¿æŽããããšãéèŠã§ããHTTP/3ãšQUICãžã®ç§»è¡ã¯ãã°ããŒãã«ãªèªã¿èŸŒã¿æéãããã«æ¹åããŸããããããã®ããã©ãŒãã³ã¹åäžã«ãã£ãŠCSSé ä¿¡æŠç¥ãæé©åããå¿ èŠæ§ããªããªãããã§ã¯ãããŸãããCSSã¢ãŒããã¯ãã£ã®ãã¹ããã©ã¯ãã£ã¹ãåãå ¥ãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«çŠç¹ãåœãŠãããšã¯ããŠãŒã¶ãŒãã©ãã«ããŠã倧ããªéããçã¿åºãããšãã§ããŸãã