<?xml version="1.0" encoding="utf-8"?>
    <feed xml:lang="ja"
      xmlns="http://www.w3.org/2005/Atom"
      xmlns:media="http://search.yahoo.com/mrss/">
      <id>https://firstlayout.net/</id>
      <title>FirstLayout</title>
      <subtitle>学んだことを書き留める Web デザイナーのブログ</subtitle>
      <link rel="self" type="application/atom+xml" href="https://firstlayout.net/feed.xml" />
      <link rel="alternate" href="https://firstlayout.net/" />
      <updated>2025-09-09T00:24:01.000+09:00</updated>
      <icon>https://firstlayout.net/images/icon/favicon-32x32.png</icon>
      <author>
        <name>Akira</name>
      </author>
      <entry>
          <id>https://firstlayout.net/astro-x-shiki-codeblock-with-filename-diff-and-more/</id>
          <title>Astro + Shiki でファイル名や diff などを表示するコードブロックを作る</title>
          <summary>Astro + Shikiで MDX のコードブロックを拡張し、ファイル名の表示・差分表示・行ハイライト・コピー機能などを Transformers API で実装します。</summary>
          <link rel="alternate" href="https://firstlayout.net/astro-x-shiki-codeblock-with-filename-diff-and-more/" />
          <published>2025-09-09T00:24:01.000+09:00</published>
          <updated>2025-09-09T00:24:01.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/astro-x-shiki-codeblock-with-filename-diff-and-more.webp" />
        </entry><entry>
          <id>https://firstlayout.net/default-value-to-avoid-any-when-using-astro-polymorphic/</id>
          <title>Astro の Polymorphic を使う時に any にしないためのデフォルト値</title>
          <summary>CSS の @layer を Astro で書いた時、意図しないレイヤー順序になるケースがありました。その問題となるケースと injectScript などによる対策です。</summary>
          <link rel="alternate" href="https://firstlayout.net/default-value-to-avoid-any-when-using-astro-polymorphic/" />
          <published>2024-11-18T14:46:25.000+09:00</published>
          <updated>2024-11-18T14:46:25.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/default-value-to-avoid-any-when-using-astro-polymorphic.webp" />
        </entry><entry>
          <id>https://firstlayout.net/css-cascade-layer-order-management-in-astro/</id>
          <title>Astro での CSS カスケードレイヤーの順序の管理：問題ケースと解決方法</title>
          <summary>CSS の @layer を Astro で書いた時、意図しないレイヤー順序になるケースがありました。その問題となるケースと injectScript などによる対策です。</summary>
          <link rel="alternate" href="https://firstlayout.net/css-cascade-layer-order-management-in-astro/" />
          <published>2024-07-29T15:38:15.000+09:00</published>
          <updated>2024-07-29T15:38:15.000+09:00</updated>
          <category term="CSS" /><category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/css-cascade-layer-order-management-in-astro.webp" />
        </entry><entry>
          <id>https://firstlayout.net/differences-in-color-mix-function-depending-on-color-space/</id>
          <title>color-mix() の色空間による違い</title>
          <summary>CSS の color-mix() 関数に指定する色空間によって、どれほど色が異なるのかが分かる一覧を作りました。</summary>
          <link rel="alternate" href="https://firstlayout.net/differences-in-color-mix-function-depending-on-color-space/" />
          <published>2024-06-28T15:40:12.000+09:00</published>
          <updated>2024-06-28T15:40:12.000+09:00</updated>
          <category term="CSS" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/differences-in-color-mix-function-depending-on-color-space.webp" />
        </entry><entry>
          <id>https://firstlayout.net/generate-a-material-design-3-color-scheme-with-material-color-utilities/</id>
          <title>マテリアルデザイン 3 のカラースキームを Material Color Utilities で作る</title>
          <summary>npm パッケージの Material Color Utilities の TypeScript 版を使い、ライトモードとダークモードに対応するマテリアルデザイン 3 の色を作ります。</summary>
          <link rel="alternate" href="https://firstlayout.net/generate-a-material-design-3-color-scheme-with-material-color-utilities/" />
          <published>2024-05-13T14:21:51.000+09:00</published>
          <updated>2024-05-13T14:21:51.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/generate-a-material-design-3-color-scheme-with-material-color-utilities.webp" />
        </entry><entry>
          <id>https://firstlayout.net/upload-directly-to-cloudflare-pages-using-wrangler/</id>
          <title>Wrangler を使い Cloudflare Pages に直接アップロード</title>
          <summary>静的サイトを Cloudflare Pages で公開する時に Wrangler を使って成果物を直接アップロードする方法です。</summary>
          <link rel="alternate" href="https://firstlayout.net/upload-directly-to-cloudflare-pages-using-wrangler/" />
          <published>2024-02-14T15:10:57.000+09:00</published>
          <updated>2024-02-14T15:10:57.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/upload-directly-to-cloudflare-pages-using-wrangler.webp" />
        </entry><entry>
          <id>https://firstlayout.net/how-to-output-a-comma-other-than-at-the-end-in-json-created-with-nunjucks/</id>
          <title>Nunjucks で作る JSON で末尾以外にカンマを出力する方法</title>
          <summary>JSON では末尾のカンマは許容されていないため、末尾以外にカンマを出力しなければなりません。Nunjucks では、主に 3 つの方法で末尾以外にカンマを出力できます。</summary>
          <link rel="alternate" href="https://firstlayout.net/how-to-output-a-comma-other-than-at-the-end-in-json-created-with-nunjucks/" />
          <published>2024-01-29T00:00:00.000+09:00</published>
          <updated>2024-01-29T00:00:00.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/how-to-output-a-comma-other-than-at-the-end-in-json-created-with-nunjucks.webp" />
        </entry><entry>
          <id>https://firstlayout.net/browser-testing-safari-on-windows/</id>
          <title>Windows で Safari のブラウザテストをする</title>
          <summary>Playwright を使い、Windows で Safari のブラウザテストをする方法です。WebKit ブラウザをインストールでき、デベロッパーツールも使えます。</summary>
          <link rel="alternate" href="https://firstlayout.net/browser-testing-safari-on-windows/" />
          <published>2022-10-28T20:06:18.000+09:00</published>
          <updated>2022-10-28T20:06:18.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/browser-testing-safari-on-windows.webp" />
        </entry><entry>
          <id>https://firstlayout.net/converting-strings-and-arrays-in-nunjucks/</id>
          <title>Nunjucks での文字列と配列の変換</title>
          <summary>JavaScript テンプレートエンジン Nunjucks で文字列と配列を変換する split と join の紹介です。</summary>
          <link rel="alternate" href="https://firstlayout.net/converting-strings-and-arrays-in-nunjucks/" />
          <published>2022-09-19T15:26:40.000+09:00</published>
          <updated>2022-09-19T15:26:40.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/converting-strings-and-arrays-in-nunjucks.webp" />
        </entry><entry>
          <id>https://firstlayout.net/using-recaptcha-v3-on-wordpress-without-plugins/</id>
          <title>WordPress に reCAPTCHA v3 をプラグインを使わず実装</title>
          <summary>WordPress のコメントフォームとログインフォーム、パスワードリセット手順のリクエストフォームに reCAPTCHA v3 を実装するカスタマイズです。</summary>
          <link rel="alternate" href="https://firstlayout.net/using-recaptcha-v3-on-wordpress-without-plugins/" />
          <published>2022-08-21T17:28:22.000+09:00</published>
          <updated>2022-08-21T17:28:22.000+09:00</updated>
          <category term="WordPress" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/using-recaptcha-v3-on-wordpress-without-plugins.webp" />
        </entry><entry>
          <id>https://firstlayout.net/speed-up-wordpress-by-lazy-loading-twitter-and-instagram/</id>
          <title>Twitter と Instagram の遅延読み込みで WordPress を高速化</title>
          <summary>WordPress の表示を速くするカスタマイズです。Intersection Observer API を使い、Twitter と Instagram の埋め込みを遅延で読み込みます。</summary>
          <link rel="alternate" href="https://firstlayout.net/speed-up-wordpress-by-lazy-loading-twitter-and-instagram/" />
          <published>2022-06-06T13:30:19.000+09:00</published>
          <updated>2022-06-06T13:30:19.000+09:00</updated>
          <category term="WordPress" /><category term="高速化" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/speed-up-wordpress-by-lazy-loading-twitter-and-instagram.webp" />
        </entry><entry>
          <id>https://firstlayout.net/using-sass-with-eleventy-and-minify-css/</id>
          <title>Eleventy での Sass の使用と CSS の軽量化</title>
          <summary>静的サイトジェネレーター Eleventy で Sass 環境を構築する方法です。また、未使用の CSS の削除と CSS の縮小も行います。</summary>
          <link rel="alternate" href="https://firstlayout.net/using-sass-with-eleventy-and-minify-css/" />
          <published>2022-05-09T12:13:24.000+09:00</published>
          <updated>2022-05-09T12:13:24.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/using-sass-with-eleventy-and-minify-css.webp" />
        </entry><entry>
          <id>https://firstlayout.net/dump-eleventy-collections-in-njk-file/</id>
          <title>Eleventy の collections を Nunjucks で dump する</title>
          <summary>静的サイトジェネレーターの Eleventy の collections に Nunjucks の dump を使うとエラーが出ました。その対処法です。</summary>
          <link rel="alternate" href="https://firstlayout.net/dump-eleventy-collections-in-njk-file/" />
          <published>2022-04-04T14:23:50.000+09:00</published>
          <updated>2022-04-04T14:23:50.000+09:00</updated>
          <category term="JavaScript" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/dump-eleventy-collections-in-njk-file.webp" />
        </entry><entry>
          <id>https://firstlayout.net/fluidly-font-size-created-with-sass-and-clamp/</id>
          <title>Sass と clamp() で作る可変のフォントサイズ</title>
          <summary>CSS の clamp() を使えば、ビューポートに応じて大きさが変わるフォントサイズを指定できます。その clamp() を生成する Sass の独自関数です。</summary>
          <link rel="alternate" href="https://firstlayout.net/fluidly-font-size-created-with-sass-and-clamp/" />
          <published>2022-02-04T12:33:45.000+09:00</published>
          <updated>2022-02-04T12:33:45.000+09:00</updated>
          <category term="CSS" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/fluidly-font-size-created-with-sass-and-clamp.webp" />
        </entry><entry>
          <id>https://firstlayout.net/amp-script-does-not-reflect-changes-in-button-tag-attributes-in-html/</id>
          <title>amp-script で button タグの属性の変更が HTML に反映されない</title>
          <summary>class や aria-* などの属性を amp-script で追加や更新、削除をする場合、button タグの HTML に変更が反映されません。</summary>
          <link rel="alternate" href="https://firstlayout.net/amp-script-does-not-reflect-changes-in-button-tag-attributes-in-html/" />
          <published>2021-12-03T11:47:16.000+09:00</published>
          <updated>2024-01-28T00:00:00.000+09:00</updated>
          <category term="AMP" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/amp-script-does-not-reflect-changes-in-button-tag-attributes-in-html.webp" />
        </entry><entry>
          <id>https://firstlayout.net/blurred-circle-accents-made-with-css/</id>
          <title>CSS で作るぼかした円のアクセント</title>
          <summary>サイトのアクセントとしてよく見かける円をぼかす CSS の紹介です。</summary>
          <link rel="alternate" href="https://firstlayout.net/blurred-circle-accents-made-with-css/" />
          <published>2021-09-29T15:58:27.000+09:00</published>
          <updated>2021-09-29T15:58:27.000+09:00</updated>
          <category term="CSS" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/blurred-circle-accents-made-with-css.webp" />
        </entry><entry>
          <id>https://firstlayout.net/gradation-created-by-blurring/</id>
          <title>CSS で円をぼかして作るグラデーション</title>
          <summary>CSS の filter: blur() を使い、円をぼかして作るグラデーションの紹介です。contrast() などで色の調整もできます。</summary>
          <link rel="alternate" href="https://firstlayout.net/gradation-created-by-blurring/" />
          <published>2021-08-04T12:59:10.000+09:00</published>
          <updated>2021-08-04T12:59:10.000+09:00</updated>
          <category term="CSS" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/gradation-created-by-blurring.webp" />
        </entry><entry>
          <id>https://firstlayout.net/css-to-round-the-outer-corners-of-the-active-menu/</id>
          <title>アクティブなメニューの外側の角を丸くする CSS</title>
          <summary>「アクティブなメニューやタブ」と「その他の部分」の境界の角を丸くする CSS の紹介です。box-shadow を使い、湾曲を表現します。</summary>
          <link rel="alternate" href="https://firstlayout.net/css-to-round-the-outer-corners-of-the-active-menu/" />
          <published>2021-07-25T16:24:07.000+09:00</published>
          <updated>2021-07-25T16:24:07.000+09:00</updated>
          <category term="CSS" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/css-to-round-the-outer-corners-of-the-active-menu.webp" />
        </entry><entry>
          <id>https://firstlayout.net/create-rankings-in-wordpress-based-on-google-analytics-data/</id>
          <title>Google アナリティクスのデータを使い WordPress で人気ランキングを作る</title>
          <summary>アナリティクス Reporting API v4 を使用し、Google アナリティクスの計測結果に基づいた人気ランキングを WordPress で作成する方法。</summary>
          <link rel="alternate" href="https://firstlayout.net/create-rankings-in-wordpress-based-on-google-analytics-data/" />
          <published>2021-04-22T13:22:50.000+09:00</published>
          <updated>2021-04-22T13:22:50.000+09:00</updated>
          <category term="WordPress" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/create-rankings-in-wordpress-based-on-google-analytics-data.webp" />
        </entry><entry>
          <id>https://firstlayout.net/use-recaptcha-in-comment-form-with-wordpress-plugin-amp/</id>
          <title>WordPress プラグインの AMP のコメントフォームで reCAPTCHA を使用する</title>
          <summary>WordPress プラグインの AMP を使用しているサイトのコメントフォームに reCAPTCHA v3 を導入する方法の紹介です。</summary>
          <link rel="alternate" href="https://firstlayout.net/use-recaptcha-in-comment-form-with-wordpress-plugin-amp/" />
          <published>2021-03-16T11:31:38.000+09:00</published>
          <updated>2021-06-15T12:18:06.000+09:00</updated>
          <category term="AMP" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/use-recaptcha-in-comment-form-with-wordpress-plugin-amp.webp" />
        </entry><entry>
          <id>https://firstlayout.net/alt-text-in-material-design/</id>
          <title>マテリアルデザインにおける alt テキスト</title>
          <summary>画像の特徴を示す情報を文脈に沿ってキーワードを含めながら 125 文字以内で説明するように推奨されています。また、画像を説明するキャプションや本文がある場合は省略できます。</summary>
          <link rel="alternate" href="https://firstlayout.net/alt-text-in-material-design/" />
          <published>2020-08-06T13:11:01.000+09:00</published>
          <updated>2020-08-06T13:11:01.000+09:00</updated>
          <category term="HTML" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/alt-text-in-material-design.webp" />
        </entry><entry>
          <id>https://firstlayout.net/minify/</id>
          <title>CSS と JavaScript の縮小化 PHP ライブラリ「Minify」</title>
          <summary>PHP ライブラリ Minify を使えば、CSS と JavaScript を簡単に縮小できます。 縮小化と同時に複数のファイルの結合も可能です。</summary>
          <link rel="alternate" href="https://firstlayout.net/minify/" />
          <published>2020-06-05T16:08:01.000+09:00</published>
          <updated>2020-06-05T16:08:01.000+09:00</updated>
          <category term="高速化" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/minify.webp" />
        </entry><entry>
          <id>https://firstlayout.net/optimize-amp-pages/</id>
          <title>さらなる高速表示のための AMP ページの最適化</title>
          <summary>AMP ページは、必ずしも AMP キャッシュで表示されるわけではありません。しかし、最適化により常に高速な表示が可能です。</summary>
          <link rel="alternate" href="https://firstlayout.net/optimize-amp-pages/" />
          <published>2020-05-05T13:45:25.000+09:00</published>
          <updated>2021-07-18T16:37:05.000+09:00</updated>
          <category term="AMP" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/optimize-amp-pages.webp" />
        </entry><entry>
          <id>https://firstlayout.net/amp-service-worker/</id>
          <title>AMP に最適な PWA を 1 行で実装する AMP Service Worker の使い方</title>
          <summary>AMP ページで簡単に Service Worker を利用できる AMP Service Worker の紹介です。AMP ランタイムや HTML などをキャッシュできます。</summary>
          <link rel="alternate" href="https://firstlayout.net/amp-service-worker/" />
          <published>2020-04-08T12:28:11.000+09:00</published>
          <updated>2020-04-08T12:28:11.000+09:00</updated>
          <category term="AMP" />
          <author>
            <name>Akira</name>
          </author>
          <media:thumbnail url="https://firstlayout.net/open-graph/amp-service-worker.webp" />
        </entry>
    </feed>