Anchor Positioningが全対応。HTML・CSSだけのポップオーバーが完全体に
ARANK

HTMLのPopover APIを使えば、ESCキーで閉じる処理やフォーカス管理がJavaScriptなしで実装できます。しかし、ポップオーバーの位置指定には結局JavaScriptが必要でした。2026年1月13日に、Firefox 147がリリースされ、「CSS Anchor Positioning」が全ブラウザ対応しました。CSS Anchor Positioningとは、要素の位置を別の要素の位置に合わせられるCSSの機能です。Chrome・Safari・Edgeでは先に対応していましたが、長らくFirefoxだけ対応していなかったのです。本記事では、Popover APIとCSS Anchor Positioningを組み合わせて、ポップオーバーをJavaScriptなしで実装する方法を解説します。実例として、タスク管理のサブメニューを右側に表示する表現や、ヘッダーのユーザーアイコン下にドロップダウンメニューを表示するデモを紹介します。タスク管理のサブメニューユーザーアイコンの下にドロップダウンメニューが表示されるPopover APIとは従来、ポップオーバーを実装するには、大量のイベントリスナー、複雑な位置計算のロジック、スクロールやリサイズへの対応が必要でした。たとえば次のようなJavaScriptのコードが必要です。// 従来のJavaScript実装 const button = …

zenn.dev
Related Topics: CSS Web Standards / Browsers HTML
3 comments