From 4bd32b8d5aa72c90e924fd1fc129b37c9cba3293 Mon Sep 17 00:00:00 2001 From: Shinya Fujino Date: Tue, 29 Aug 2023 14:04:13 +0900 Subject: [PATCH 1/3] aedcab56a9a83ea17ce123e2ffab1b24f8be2355 --- src/content/docs/ja/guides/styling.mdx | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/content/docs/ja/guides/styling.mdx b/src/content/docs/ja/guides/styling.mdx index 5e8ee3b4186ed..6fb92abe9c109 100644 --- a/src/content/docs/ja/guides/styling.mdx +++ b/src/content/docs/ja/guides/styling.mdx @@ -514,6 +514,29 @@ Astroのスタイル方法は、[Markdownレイアウトコンポーネント](/ Tailwindを使用している場合、Markdownのスタイリングには[typographyプラグイン](https://tailwindcss.com/docs/typography-plugin)が便利です。 +## 本番環境 + +### バンドルの調整 + +Astroが本番環境向けにサイトをビルドする際、CSSはチャンクに結合されます。サイト上の各ページはそれぞれ独自のチャンクとなり、さらに複数のページ間で共有されるCSSは、再利用のために独自のチャンクに分割されます。 + +各HTMLファイルには、ページが必要とするチャンクごとに``タグが追加されます。 + +多数のページと複数の異なる共有スタイルをもつサイトは、スタイルシートへのリクエスト数が増加し、サイトのパフォーマンスに影響を与える可能性があります。`inlineStylesheets`オプションを設定することで、外部にリクエストする代わりに(ミニファイされた)スタイルシートを` @@ -157,7 +157,7 @@ import MyComponent from "../components/MyComponent.astro" This will be red! ``` -このパターンでは、子コンポーネントに直接スタイルを設定できます。Astroは、親のスコープ付きクラス名(例:`astro-HHNQFKH6`)を`class`プロパティを通して自動的に渡し、その子を親のスコープに含めます。 +このパターンでは、子コンポーネントに直接スタイルを設定できます。Astroは、親のスコープ付きクラス名(例:`astro-hhnqfkh6`)を`class`プロパティを通して自動的に渡し、その子を親のスコープに含めます。 :::note[親コンポーネントからスコープされたクラス] `class`プロパティは親のスコープに子を含むので、親から子へスタイルがカスケードされる可能性があります。このような意図しない副作用を避けるには、子コンポーネントでユニークなクラス名を使用するようにします。 @@ -531,24 +531,36 @@ Tailwindを使用している場合、Markdownのスタイリングには[typogr ### バンドルの調整 -Astroが本番環境向けにサイトをビルドする際、CSSはチャンクに結合されます。サイト上の各ページはそれぞれ独自のチャンクとなり、さらに複数のページ間で共有されるCSSは、再利用のために独自のチャンクに分割されます。 +Astroが本番環境向けにサイトをビルドする際、CSSはミニファイされチャンクへと結合されます。サイト上の各ページはそれぞれ独自のチャンクを取得し、さらに複数のページ間で共有されるCSSは、再利用のために独自のチャンクに分割されます。 + +しかし、複数のページでスタイルを共有している場合、共有される一部のチャンクが非常に小さくなる場合があります。それらがすべて別々に送信された場合、スタイルシートへのリクエストが増加し、サイトのパフォーマンスに影響を与える可能性があります。そのため、Astroはデフォルトでは、HTML内の4kB以上のスタイルシートのみを``タグとしてリンクし、それ以外のものは`