編集

Safari 18.4 リリース

Safari 18.4 がリリース。非常に多くの機能追加や変更が行われている。以降ではいくつかピックアップして紹介する。

出展:https://webkit.org/blog/16574/webkit-features-in-safari-18-4/

#Declarative Web Push のサポート

Service Worker に依存せずにプッシュ通知を管理できる機能である Declarative Web Push がサポートされた。

参考:https://webkit.org/blog/16535/meet-declarative-web-push/

#スクリプト間にスペースを追加する text-autospace

スクリプト間、例えば日本語の文章内に半角英数字などの単語が入った場合、その前後にスペースを自動的に追加する text-autospace がサポートされた。現在は Safari 18.4 以降でのみサポート。

ただし、現在の Safari の実装は仕様通りではなく明示的に指定しない限り、従来の表示であるtext-autospace: no-autospaceが適用される。有効化するには、text-autospace: normalなどの指定が必要。

仕様では初期値が normal になっており、将来的にはスクリプト間にスペースがデフォルトで挿入されるようになると思われる。

参考:https://www.w3.org/TR/css-text-4/#text-autospace-property

#details 要素のカスタマイズ

::details-content疑似要素が追加され、details要素の高度なカスタマイズが可能になった。

関連:details 要素のカスタマイズ - Chrome 131 | Frontend Weekly 2024-11-15

#clip-path での shape 関数のサポート

clip-pathshape関数を利用することが可能になった。Chrome 135 でのサポートと同様。

関連:clip-path での shape 関数のサポート - Chrome 135 | Frontend Weekly 2025-04-04

#number input のホイールイベントを削除

<input type="number">のホイールイベント(マウスなどによるホイール操作によるイベント)が削除された。

ホイールイベントによりスクロール操作によって誤って入力が変更されるということがあり、意図的に無効化されることが多くあった。

現在、Chrome や Firefox でも削除の検討が行われている。

参考:https://github.com/whatwg/html/issues/10911

#color input の不透明度のサポート

<input type="color">の alpha 属性がサポートされた。これにより不透明度をカラーピッカーで選択できるようになった。

参考:https://html.spec.whatwg.org/multipage/input.html#color-state-(type=color)

#Iterator Helpers のサポート

イテレータにsomeeveryfilterなど配列相当の操作を可能にする多くのメソッドが追加された。 Safari 18.4 のサポートにより、ほとんどのブラウザで利用できるようになった。

参考:https://github.com/tc39/proposal-iterator-helpers

編集