2025/09/19
Astroで「クリックして拡大」を実装します。
※クリックで拡大できます!!
画像ソース / Unsplash
npm install medium-zoom
<script> import mediumZoom from "medium-zoom"; const zoom = mediumZoom(".prose img:not(.lc-image)", { margin: 24, background: "rgba(255,255,255,0.8)", scrollOffset: 16 }); zoom.on("open", (e) => { const image = e.target as HTMLElement; if (image) image.classList.add("z-[1000]"); })</script>
このブログはTailwind Typographyを使ってるので、セレクターは.prose img
にしてます。
あと、拡大した画像がヘッダーとかの上にちゃんと出るように、画像側にz-index足してます。
拡大時のオーバーレイがヘッダーの下に潜らないように、スタイルをちょっと直します。
.medium-zoom-overlay { @apply z-[1000] bg-white/50 backdrop-blur-sm;}
これで実装できましたね。たぶん…。
これでいいね。うん。
特に書くこともねぇけどな!!!!!!