2022 年 5 月に安定版とベータ版のウェブブラウザに導入された興味深い機能をご紹介します。
ブラウザの安定版リリース
5 月に Chrome 102、Safari 15.5、Firefox 100、Firefox 101 が安定版になりました。
Chrome 102 と Safari 15.5 には inert
属性が含まれています。これにより、要素がインタラクティブでない場合、タブ順序とユーザー補助ツリーから要素が削除されます。たとえば、現在画面外にある要素や非表示になっている要素などです。
Chrome 102 には、HTML hidden
属性の新しい値 until-found
が含まれています。これにより、ページ内の検索と、ページの閉じられた領域内のテキストのテキスト フラグメントへのスクロールが可能になります(アコーディオン パターンで使用できます)。詳しくは、Hide=until-found で折りたたみコンテンツにアクセスできるようにするをご覧ください。
Chrome 102 には Navigation API が用意されています。これは、シングルページ アプリケーションでクライアントサイドのルーティングを標準化する API です。この API は以前、App History API という名前でした。
Firefox 101 は構成可能なスタイルシートをサポートしています。サポートには、CSSStyleSheet()
コンストラクタ、replace()
、replaceSync()
メソッドが含まれます。コンストラクタブル スタイルシートを使用すると、Shadow DOM で使用するスタイルシートを簡単に作成できます。次の例では、CSSStyleSheet()
コンストラクタを使用してスタイルシートを作成し、replaceSync()
メソッドを使用して CSS ルールを追加して、結果のルールがコンソールに出力されます。
const stylesheet = new CSSStyleSheet();
stylesheet.replaceSync('body { color: red; }');
console.log(stylesheet.rules[0].cssText);
また、Firefox 101 には prefers-contrast
メディア機能があり、この機能はクロスブラウザで利用できます。
ベータ版ブラウザのリリース
ブラウザのベータ版では、ブラウザの次期安定版に搭載される機能のプレビューを確認できます。リリース前に、サイトに影響する可能性がある新機能や削除をテストできます。
4 月の新しいベータ版は、Chrome 103 と Firefox 102 でした。
Firefox 102 には update
メディア機能が含まれています。これは、出力デバイスがレンダリング後にコンテンツの外観を変更できるかどうかをクエリするために使用されます。次の値を指定できます。
none
- レンダリングされたコンテンツは更新できません。たとえば、印刷されたドキュメントなどです。
slow
- デバイスでコンテンツを更新することはできますが、滑らかなアニメーションを表示するのに時間がかかりすぎています。たとえば、電子ペーパー ディスプレイなどです。
fast
- コンテンツは動的に変更でき、アニメーションをレンダリングするのに十分な速さで変更できます。たとえば、パソコンやスマートフォンの画面です。
Chrome 103 では、Local Font Access API を使用して、ユーザーがローカルにインストールしたフォントにアクセスできます。
これらのベータ版機能はまもなく安定版のブラウザで提供される予定です。
編集: この投稿の以前のバージョンでは、Element.isVisible()
メソッドについて言及していましたが、このリリースでは提供されません。
ウェブ初心者向けシリーズの一部