Bootstrapは10月8日、バージョン6のアルファ1を公開した。2011年からのインストールは17億5000万回を超える、としている。パッケージは bootstrap@6.0.0-alpha.1 だ。対応の下限はChromeとEdge 130、Firefox 132、Safari 18で、v5がChromeとFirefox 60、Safari 12まで見ていたのに比べて新しい。light-dark()、:has()、コンテナクエリ、oklch()、color-mix()、ネイティブのdialogを、代替実装なしで使うためである。下限を満たせない場合はv5を継続し、v5.4.0のあとで終了日を示す予定だ。
見た目の調整はSass変数からCSS変数のトークンマップへ移った。@import は非対応で、@use と @forward で上書きする。トークンは実行時にも変えられ、半径や余白の基準を一つ変えると段階全体が追従する。接頭辞はビルド時にPostCSSが付ける。
破壊的変更の中心は、ブレークポイントを中置から接頭辞へ移したことだ。.d-md-none は .md:d-none、.col-lg-6 は .lg:col-6、.offcanvas-md は .md:drawer になる。hoverやfocusも同じ形だ。アコーディオンはdetailsとsummary、ダイアログはdialog要素を使い、開閉の高さはCSSでアニメーションする。
JavaScriptはESMのみで、UMDと window.bootstrap はない。data属性だけならscriptに type="module" を付ける。CommonJSの require() はESMへ移す。ソースはTypeScriptになり、型を同梱するため @types/bootstrap は外せる。
アルファなのでベータ前に変わる。エージェントにv5のクラスを書かせているチームは、接頭辞とESMの差を先に渡さないと、生成結果が壊れる。