デジタルマーケティングTips
Safari 18 beta 仕様変更発表まとめ
WWDC時点で発表された、Safari 18(ベータ版)の主要な仕様変更発表のまとめです。
Safari 18.0正式版公開(9月)時点の情報はこちら
要点
- 追加・拡張:
以下の機能が追加・拡張され、表現力・利便性が向上します
Apple Vision Pro対応が強化され、WebベースのVRや立体視Webコンテンツが作りやすくなる
CSS新機能への対応が強化され、表現力が向上する 等 - 廃止・削除:
以下の機能が使用できなくなります
これを使用している場合は設定の移行等が必要になります
古い非標準機能が非推奨化/廃止される 等
メルマガでも情報を配信中です! ぜひご登録ください。
追加・拡張
WebXR
- visionOS版Safari 18で、WebXRのサポートが追加されました。これにより、WebXRを使ったWebベースのVRコンテンツをApple Vision Proで表示できるようになります。
- transient-pointer入力モード…VR空間内で、オブジェクトをつまんだりするような入力をVR空間内でできるようになります。
関連情報:Introducing Natural Input for WebXR in Apple Vision Pro - ハンドトラッキング(手指モーションキャプチャー)デバイスを手に装着した場合、手や指関節の動きを取得して、VR空間内のユーザーアクションに反映させられるようになります。
CSS
- View Transitions API…ページ表示の切り替え時にトランジション(アニメーション効果)が使えるようになります。Safari 18ではCSS View Transitions Module Level 1の範囲に対応します。デフォルトではクロスフェードが適用されます。
- スタイルクエリ…コンテナクエリ内で、指定したスタイル(プロパティ値)に該当する場合のスタイル適用を指定できるようになります。
currentcolor
…[現在の色]を参照するキーワードです。CSSで相対色指定を行う際に、そのときのプロパティ値を基準にした色指定を作れるようになります。- システム設定色参照CSSで相対色指定を行う際に、システム上で設定されている各種指定色を参照したうえで、それを基準にした色指定を作れるようになります。
@starting-style
…トランジション変化前の値指定ができるようになります。- Apple Vision Pro/visionOSで空間に配置された要素が、タップ可能であることを示すため強調表示されるようになります。このときの表示スタイル(パディング追加や枠線の変更等)をCSSで指定できるようになります。
- CSSでの背景フィルター指定(ぼかし等)について、従来は「
-webkit-backdrop-filter
」とプレフィックスつきでの記載が必要でしたが、プレフィックスなしの「backdrop-filter
」でも使えるようになります。
これによりChrome/EdgeやFirefoxと共通の記法が利用可能になり、相互運用性が向上します。 safe
キーワード…フレックスアイテム配置時の位置指定(中央かどちらかの方向に寄るか)について、オーバーフロー要素を左揃えに変更することで、文字の先頭だけは読めるようになります。justify-content: safe center;
…文言がコンテナから横方向にはみ出るときに、単語が左揃えになり、先頭から欠けた単語を類推しやすくなります。justify-content: center;
…文言が横方向にはみ出るときに、単語がはみ出ても従来の位置指定を維持します。
content-visibility
プロパティ…コンテンツが表示・描画対象かどうかを指定するプロパティです。visible
/auto
/hidden
のいずれかを値として指定でき、指定がない場合visible
がデフォルト値として適用されます。
特長は高速化・SEOとアクセシビリティの両立がしやすいことです。content-visibility: auto;
に指定された要素は以下の特性を持ちます。- 画面の表示範囲(の近く)に入るまでレンダリング処理対象にならず、表示処理を初期画面に集中できます。このため表示高速化・SEOに有効です。
- コンテンツがドキュメントモデルやアクセシビリティツリーで存在している扱いになり、アクセシビリティ上の予期しない悪影響を回避しやすくなります。(
aria-hidden="true"
属性をつければアクセシビリティツリーから消すことも可能)
Webアプリ
- ブラウザ以外のリンクURLがDockに登録されたWebアプリのものと一致する場合、リンクをデフォルトブラウザではなく該当Webアプリで開くようになります。(ブラウザ内のリンクで該当があっても同じブラウザ内で開きます)
拡張機能
- モバイルデバイス管理(MDM)関連の対応が強化され、企業・学校等で管理する端末で以下の項目を制御下におけるようになります。
- 拡張機能の有効化状態
- プライベートブラウズモードの利用
- Webサイトアクセス先
空間メディア
- visionOS 2版Safariで、Fullscreen APIを利用して、Web上で空間画像(立体視)やパノラマを実装できるようになります。
HTML
writingsuggestions
属性…フォーム入力時のインライン予測変換/サジェストの有無をWebサイト側で制御できるようになります。- (iOS版)スイッチやチェックボックスを切り替える際に、触覚フィードバックが追加されます。
- (macOS版)日時入力要素(
date
/datetime-local
/time
)のアクセシビリティ対応が強化され、VoiceOverでの動作が改善されます。 aria-braillelabel
属性 /aria-brailleroledescription
属性…アクセシビリティ機能として、要素に点字リーダー向けのARIAラベル付与や説明の記述ができるようになります。
メディア
- (macOS版)Safari内の動画プレーヤーが強化されます。
Safariウィンドウ内で、macOSシステム内の再生コントロールを使用したプレーヤーが使用できます。
タブ切り替えやウィンドウ終了時に、表示が自動的にピクチャーインピクチャーに切り替わります。 - (visionOS版)全画面動画を周辺の環境(自分を取り巻く背景)内に取り込めるようになります。クラウン回転で没入感の調整が可能です。
- Managed Media Source APIとMedia Source Extensions APIをWeb Workerで扱う機能に対応します。ストリーミング中にコメント等でメインスレッドの負荷が高まっても、映像・音声ストリーミング再生を安定して継続させたい場合に適しています。
WebRTC
- WebRTCでHEVC映像圧縮を扱う際に、RFC 7798 RTPペイロード形式が利用可能になります。従来の形式(汎用パケット化)に比べて、ビデオ会議・ストリーミング・高ビットレート動画等の伝送を改善するのに役立ちます。
パスキー
mediation=conditional
…パスワード認証の既存アカウントに対して、Webサイト側で自動的にパスキー認証にアップグレードさせることが可能になります。- パスキー認証を、同じ証明書を共有する関連オリジン(ドメイン)同士で連携利用できるようになります。
prf
拡張…パスキーから、ユーザーデータ保護用の対称鍵を取得できるようになります。
JavaScript
- 正規表現に使用できる文字のうち、Unicode 15.1で加わる627種類の文字に対応します。
- 正規表現vフラグに対応し、キリル文字とラテン文字を分けたマッチング等が可能になります。
Web API
- Safariで宣言型シャドウルートの対応が拡大します。
shadowRootDelegatesFocus
・shadowRootClonable
IDL属性をtemplate
要素に付加できるようになります。shadowRootSerializable
属性・shadowRootSerializable
IDL属性をtemplate
要素に付加することにより、宣言型シャドウルートのシリアル化が可能になります。
PopStateEvent
/hasUAVisualTransition
…表示履歴が断片的に変更された際にトランジションが適用されるかを指定できるようになります。- モジュールスクリプトを外部ホスティングサーバー等からインポートする際に、サブリソースの整合性確認ができるようになります。
bytes()
メソッド…Request
・Response
・Blob
・PushMessageData
オブジェクトで、arrayBuffer()
の代替手段としてbytes()
メソッドによるバイトデータ処理ができるようになります。- テキストフラグメント(URL内で始点終点を指定してテキストをハイライトする機能)がブラウザでサポートされているかどうかを、
document.fragmentDirective
プロパティの機能検出でチェックできるようになります。
キャンバス
getContext()
メソッド(指定に応じた描画コンテキストを返す)のコンテキスト属性として「willReadFrequently
」(ハードウェアアクセラレーションを使用せずソフトウェアでのみ処理するか否か)が指定できるようになります。getImageData()
メソッドを頻繁に利用する場合は、ソフトウェア処理オンリーの方がパフォーマンス改善になる場合があります。- 2D Canvas上の相対カラー指定で
currentcolor
(現在の色を参照)が使用できるようになります。
WebGL
- 以下の拡張機能に対応します。
EXT_texture_mirror_clamp_to_edge
…テクスチャ元画像の鏡像と組み合わせて2倍の大きさのテクスチャを作成します。WEBGL_render_shared_exponent
…浮動小数点形式のRGB9_E5データ(そのままだとカラーレンダリングできない)をカラーレンダリングできるようにします。WEBGL_stencil_texturing
…深度ステンシルテクスチャのコンポーネントに対するテクスチャリングが可能になります。EXT_render_snorm
…OpenGL ES 3.0でカラーレンダリングに対応していない符号付き正規化テクスチャやレンダーバッファ形式を、カラーレンダリング可能にします。OES_sample_variables
…フラグメントシェーダーがマルチサンプルレンダリングをより詳細に制御できるようになります。OES_shader_multisample_interpolation
…頂点出力とフラグメント入力に、補間の評価対象となる「サンプル」修飾子を付加できるようになります。
Webインスペクタ
- CSSソースエディタで、あいまい検索でのコード補完に対応するようになります。
WKWebView(アプリ内ブラウザ)
- 以下の機能に新たに対応します。
- Writing Tools API…文章作成支援機能が使えるようになります。誤字脱字チェックや修正・書き直し案の提示等をAPI経由でアプリが行ってくれます。
- Genmoji…Unicode定義外の独自の絵文字を作成し、テキスト内やリアクションに使用できるようになります。
Apple Pay
- Apple Payの端末間送金機能をSafariで扱えるようになります。
仕様変更
HTTPS
- HTTPS接続のページ内に含まれる画像・動画・音声等にHTTP(非暗号化)で送られるものが含まれる、いわゆる「混合コンテンツ」について、接続が自動的にHTTPSに切り替えられるようになります。
Web API
URL.parse()
で解析が失敗した場合、例外ではなくヌルを返すようになります。
廃止・削除
キャンバス
OffscreenCanvasRenderingContext2D().commit
メソッド(オフスクリーンキャンバスオブジェクトのcanvas
内にビットマップをコピーする機能。非標準・非推奨) が削除されます。
CSS
-webkit-alt
プロパティおよびalt
プロパティが非推奨に変更されます。
※ここでいう「
alt
プロパティ」は、img
要素タグ内に入れるalt
属性ではなく、::before
(要素に先行表示)や::after
(要素に後続表示)等の擬似要素で、content
プロパティ(表示する中身)に画像を指定した場合の代替文字列指定等に使う方です。画像の代替文字列は
content: url("/images/○○.gif") / "[新しいウィンドウで開きます]";
のようにスラッシュで切ったあとに記述する実装で代用できます。- 以下の擬似クラス(主に全画面表示関連)が非推奨に変更されます。
:-webkit-animating-full-screen-transition
:-webkit-full-screen-ancestor
:-webkit-full-screen-controls-hidden
:-webkit-full-page-media
:-webkit-full-screen-document
:-khtml-drag
resize
プロパティ(テキストボックス等の伸縮可否・方向指定)の値のうち、resize: auto;
(自動)が非推奨に変更されます。
none
(伸縮不可)、both
(縦横とも可)、horizontal
(横のみ可)、vertical
(縦のみ可)、block
(ブロック方向のみ可)、inline
(インライン方向のみ可)や各種グローバル値については従来通り指定できます。- CSSRuleインターフェイスについて、WEBKIT_KEYFRAMES_RULEおよびWEBKIT_KEYFRAME_RULEへの対応が非推奨に変更されます。(プレフィックスなし版への移行が必要)
- 画像形式のうち、JPEG 2000形式への対応が廃止されます。
メディア
- WebVTT API(動画用テキスト字幕処理)のうち、
VTTRegion.prototype.track
への対応が廃止されます。
ストレージ
- AppCache(過去のWebアプリ用キャッシュ技術、Safari 15で原則廃止)のうち、例外的に残存していた機能が18をもって完全に廃止されます。
SVGアニメーション
- SVGアニメーション関連のインターフェイスのうち、
SVGAnimateColorElement
への対応が廃止されます。
Web API
- キーボードイベント判定用プロパティのうち、
KeyboardEvent.altGraphKey
(AltGraphキーの押下判定等に使用)への対応が廃止されます。 - Web Crypto APIでの暗号化について、AES-CFBモードへの対応が廃止されます。
KeyboardEvent.prototype.keyLocation
への対応が廃止されます。
左右複数あるキーの左右識別用としては、KeyboardEvent.location
は引き続き有効です。HashChangeEvent
インターフェイス(フラグメント識別子=URLの#以降の変更に関するイベントを扱う)について、initHashChangeEvent()
メソッドへの対応が廃止されます。
修正・改善
以下のバグ・不具合が修正されました。
アクセシビリティ
- mainやセクション系要素の中にあるheaderへのロール割り当てを修正
- Accessibility API経由で範囲指定の増減入力をしてもイベントが発火しない件を修正
- スロットにaria-hiddenを設定した場合に、スロットにアサインされたノードが非表示にならない件を修正
- コンボボックスがリンクオブジェクトを正しく表示するように修正
- 時間入力時にサブフィールドにアクセシビリティラベルを付加するよう修正
- body要素・html要素でaria-hidden=true指定を無視するよう修正
- 標準時間帯(タイムゾーン)設定が間違っている場合に、間違ったdatetime(UTC日時)値が補正技術に送られていた件を修正
- 午前午後指定コンポーネントにラベルを付与し、時間制御のアクセシビリティ問題を修正
- datetime-local(現地日時)入力に対して間違ったdatetime(UTC日時)値が補正技術に送られていた問題を修正
- CSSのcontentプロパティの代替テキストが空文字列だった場合に無視するよう修正
- dd・details・dt・em・hgroup・option・s・strong要素の役割計算を修正
- aria-labelledbyが非表示要素をラベル付けの参照対象に指定した場合、直接の子テキストだけでなくツリー下位のテキスト全体を対象とするよう修正
- visibility: hiddenのコンテナの中にvisibility: visibleの要素がある場合のアクセシブル名称の計算を修正
- キャプションが動的に変更される表のアクセシビリティテキスト更新について修正
- aria-describedbyで参照対象要素の下位ツリーが変更になった場合、aria-describedbyのテキストを更新するよう修正
アニメーション
- transitionプロパティのシリアル化が最短になるよう修正
- animationプロパティのシリアル化が最短になるよう修正
認証関連
- 条件付きUIリクエストが中断したのちにnavigator.credentials.create()がエラーメッセージ「NotAllowedError: Operation Failed」を出して処理を拒否する件を修正
- 電子認証の属性名について「response」→「data」に名称変更していたのを修正
- 一度キャンセルが完了するとその後のリクエストに関わらずキャンセルフラグが立ったままの状態になっているのを修正
キャンバス
- drawImage(detachedOffscreenCanvas)が例外を送出するよう修正
- オフスクリーンキャンバスが入れ子のワーカーの入ったプレースホルダーのレンダリングに失敗する件を修正
- タブをオフにした場合にオフスクリーンキャンバスのプレースホルダーがあるコンテンツレイヤーが失われる件を修正
- drawImageメソッド(キャンバスへの画像描画)が入力画像や出力先矩形領域を変更しないよう修正
- clearRect()メソッド(指定矩形領域の内容消去)の効果が、キャンバスの親要素の表示/非表示をトグル切り替えすると元に戻ってしまう件を修正
- 画像破損時にdrawImage() APIが例外を送出するよう修正
CSS
- 空白・改行部分で、white-spaceプロパティが動的にデフォルト以外の値に設定される件を修正
- text-spacingプロパティがfontプロパティに変換される件を修正
- 右書き(右から左方向への横書き)設定時にdisclosure-open / disclosure-closed(detail要素開閉)のカスタムカウンタースタイルが正しく設定されるよう修正
- backface-visibility(3D回転等で裏に回った要素を可視にするかの設定)がスタックコンテキストと包含ブロックを作成するように修正
- 擬似クラス「:-webkit-full-screen」→「:fullscreen」のエイリアス処理を修正
- 擬似クラス「:-webkit-any-link」→「:any-link」のエイリアス処理を修正
- 擬似クラス「:matches()」→「:is()」のエイリアス処理を修正
- getComputedStyle()メソッドが::highlight()のような擬似要素に対して正常動作するよう修正
- @supportsが一部の「-webkit」プレフィックスつき擬似要素を間違ってサポート対象外として扱っていたのを、サポート対象にカウントするよう修正
- スタイル変更後にメディアクエリの影響を受けるmetaタグの更新を修正
- カラースキーム変更時にシステム色・light-dark()によるグラデーションの更新を行うよう修正
- font-synthesisプロパティ(字体合成)でfont-variant-caps: all-small-caps(大文字から小型大文字を合成)を使用したときのサイズ不具合を修正
- :empty擬似クラスのセレクターがアニメーションで動作するよう修正
- カスタムプロパティをシリアル化する際に空白を保持する件を修正
- 継承外カスタムプロパティが変更された際にスタイルを正しく更新するよう修正
- 親要素に削除された子要素について、最後に記憶したサイズが失われる件を修正
- カスタムプロパティの暗黙的初期値と明示的初期値の差が間違っているのを修正
- OSシステム色のMenu(メニュー背景色)とMenuText(メニュー文字色)のコントラストを修正
- シリアル値・計算値においてgapプロパティ(行や列の隙間指定)の一括指定値をそのまま保持する件を修正
- @starting-styleによる初期スタイル調整がnull要素で誤って呼び出される問題を修正
- -apple-pay-buttonがappearance: autoの非ボタン要素に誤適用されないよう修正
- CSS仕様に追加された色変換メソッドが一部欠落していたのを修正
- hsl()→hsla()色変換を最新の仕様変更に適合するよう修正
- rgb()→rgba()色変換を最新の仕様に適合するよう修正
- hwb()色変換を最新の仕様に適合するよう修正
- その他の色形式についても最新の仕様に適合するよう修正
- 色補間時に類似成分が繰り越される問題を修正
- mask-modeプロパティ(マスクを輝度マスクとアルファマスクのどちらで扱うかの指定)で、レイヤーパターンの塗りつぶしが適用されるよう修正
フォーム
- datalist要素のドロップダウンで表示されるoptions要素がDOM更新に同期して変わるよう修正
- select multiple(複数選択)要素のスクロールバー色が使用中のカラースキームに合うよう修正
- datalist要素の中からoption要素を選択したときに入力値が更新されてしまう件を修正
- input要素にtype="email"属性・multiple属性が両方付与された場合にvalue属性が表示されない件を修正
- input type=checkbox switch要素について、iOSでのアニメーションを修正
- ウィンドウが非アクティブ状態のときにフォームコントロール描画で表示がアクティブになる件を修正
- 構築されたFormDataオブジェクトが、画像の送信ボタンをデフォルトで入力内容に含めないよう修正
履歴管理
- Historyインターフェイスのプロパティが完全にアクティブなDocumentインターフェイスになっていない場合、SecurityError例外を送出するよう修正
HTML
- document.referrerプロパティ(参照元)が「about:blank」(空ページ)で初期化される件を修正
- 閉じタグなしのSVGスクリプト要素の解析を修正
JavaScript
- RegExp.prototype.@@splitが旧形式の正規表現静的プロパティを更新するよう修正(RegExp.input / RegExp.lastMatch / RegExp.lastParen / RegExp.leftContext / RegExp.rightContext / RegExp.$1 ~ RegExp.$9)
- String.prototype.replaceについて、パターンが正規表現でlastIndex(照合開始位置)が数値でない場合、高速パスを使用しないよう修正
- async、await、ジェネレーター、非同期関数、および非同期ジェネレーターの仕様準拠を修正
- 非同期関数・ジェネレーターについて、コンストラクタのゲッターを送出してプロミスが適切に処理されるよう修正
- 非同期ジェネレーターのreturn文でawaitの指定通りに待機するよう修正
- Symbol.speciesのゲッターが単一のJavaScript関数を共有しないよう修正
- Setメソッドを呼び出したオブジェクトのsizeプロパティに負の値が入っていた場合、「RangeError」エラーを送出するよう修正
- 別領域からのeval()関数によってeval()の直接呼び出しが発生しないよう修正
- eval()関数でスプレッド構文を使った場合直接呼び出しするよう修正
- try~catch文が派生クラスの[[Construct]]から発生したエラーをインターセプトしないよう修正
- パラメーター内のデフォルト値式で直接eval()を呼び出した場合、残余引数の中から単一の変数を出すのでなく、関数の環境で変数を生成している件を修正
- 残余引数で定義されたバインド、eval()内のバインド、先行するパラメータのデフォルト値式で作成されたクロージャのいずれかにアクセスすると、同名の変数バインドがある場合にReferenceErrorを送出する件を修正
- 残余引数内のデフォルト値式で生成されたクロージャ(別のパラメーターとは別のVariableEnvironmentコンポーネントで作成される)がシャドウ化されたパラメーターを照会/変更しようとしたときに参照環境を間違えることがある件を修正
- TypedArrayのソート方法を、コンパレータがfalseを返す特殊なケースを出せるように修正
- ビット単位のプログラミングスタイル、setExpectionPortsでのプログラミングスタイルを修正
- emitReturn()が、TDZチェックよりも前に、矢印関数の語彙環境からthisキーワードの値を読みだすよう修正
- NFKCの正規化がLatin-1文字で動作するように修正
- 開始文字がUnicodeになっているプライベート名の解析を修正
- LHSインスタンスがプリミティブの場合にRHSプロトタイプを取得しないよう修正
- ブラケット式の更新でプロパティキーの解決を最大1回にとどめるよう修正
- ブラケット式の複合割り当てでプロパティキーの解決を最大1回にとどめるよう修正
- Object.groupByおよびMap.groupBy(いずれも反復可能要素をグループ化するメソッド)がオブジェクトでない要素に対しても機能するよう修正
- Array.fromAsyncメソッドが配列コンストラクタを2回呼び出さないよう修正
- Function.prototype.toStringがアクセサのプロパティに対して一貫性のない出力を行う件を修正
- Set#symmetricDifferenceが各反復ごとにthis.hasを呼び出すよう修正
- 論理代入式の左辺に関数呼び出しが入った場合に文法エラーを出すよう修正
- 正規表現のキャプチャグループで入れ子の名称重複が発生した場合に文法エラーを出すよう修正
- ArrayBufferおよびSharedArrayBufferのコンストラクタがインスタンス生成前に長さをチェックするよう修正
- 国際実装について、仕様変更に基づき正規化を「GMT」から「UTC」に変更するよう修正
- 正規表現の後読みがv8と異なるのを修正
- Intl.DurationFormatのfractionalDigits(小数点以下の表示桁数上限)について、指定省略時に最大9桁とするよう修正
読み込み
- Cookieが無効化されている場合、navigator.cookieEnabledプロパティ(Cookie有効/無効を論理値で返す)がFalseを返すよう修正
メディア
- visionOSのタブバーでタブ切り替え後に別のウィンドウから動画の音声が再生される問題を修正
- 一部サイトにおけるMedia Source Extensions動画の再生問題を修正
- 動画のcurrentTime()が開始時間からずれることがある件を修正
- WebM(音声:Vorbis)の音声再生が破損する問題を修正
- AudioEncoderConfig(音声エンコード設定)でsampleRate(サンプリング周波数)とnumberOfChanges(チャンネル数)をともに必須項目化し、かつ0でないことを要件とするよう修正
- メディア要素が同一のメディアセグメントに2回追加される件を修正
- 標準速度での再生時間(Normal Play Time = NPT)の「時間(hour)」の数値が1桁の場合に(時間が正しくても)拒否される件を修正
- visionOSでSafariの音声が誤ったウィンドウから出力される場合がある件を修正
ネットワーク通信
- HTTP/HTTPS混在(と思われる)通信での非能動的/受動的なサブリソースリクエスト/フェッチをアップグレードさせ、標準に合致するよう修正
- 入れ子のドキュメントのナビゲーションに対するSec-Fetch-Siteリクエストヘッダー(リクエスト元・リクエスト先の関係を示す)の値が正しくない件を修正
- 非永続データストアを使用するWebArchivesの読み込みを修正
- Timing-Allow-Originレスポンスヘッダーについて、HTTPレスポンスが302の場合に適用されないよう修正
- 印刷アクションが実装された印刷ボタンの動作を修正
- 名称内にスペースを含むPDFのプレビュー表示動作を修正
レンダリング
- 一部のギリシャ文字で大文字変換が失敗するのを修正
- 1remのパディングが入ったtextarea要素のリサイズを修正
- カラーマトリックスフィルターの色の正確性を修正
- backdrop-filterについて、border-radius(角丸設定)をもつ要素の境界線領域に合わせて適用されるよう修正
- 要素の元サイズ計算について、マージンが0以外に設定された空の子要素の直前に発生する空白を考慮するよう修正
- フレックスボックス内の要素について、入れ子コンテンツにheight: 100%が適用された場合の重なり方を修正
- フロー外の兄弟要素についてグリッドアイテムの位置関係が正しくないのを修正
- 回り込みを破棄するテキストについて、単語中折り返しのCSS設定がbreak-wordだった場合の挙動を修正
- only-childな(兄弟要素のない)インライン要素にスタイル適用がない場合のmin-content(最小幅)計算を修正
- 位置設定がposition: relativeかつtopである場合に、省略記号(…)が複数回レンダリングされる件を修正
- インライン要素群がブロック要素の後ろに連続した場合逆の順序で挿入されるバグを修正
- ウィンドウリサイズ時にフッター部分のページ背景色バーが点滅する件を修正
スクロール
- 一部ページで、カーソルの下でコンテンツがスクロールしたときにカーソル表示が更新されない件を修正
SVG
- SVGパーサーの挙動について、フォームフィード(FF、改ページ制御文字)を空白として解釈するよう修正
- フィルタープリミティブ参照が不正な場合のエラー処理を修正
- switch要素内にあるSVG要素の表示を修正
- SVGのタイトルについて、display: none(非表示)をデフォルトのUAスタイルルールとして扱うよう修正
- SVG内リンクのUAスタイルシートについて、cursor: pointer(マウスカーソルがテキストリンクと同様指の形になる)の判定基準が適用されるよう修正
- SVGグラデーションがページ上でレンダリングされていない場合に、グラデーションのstop-color(経由点の色)が初期値を返す件を修正
- SVGマーカーセグメントについて、マーカーパスがサブパスで構成されている場合の計算を修正
- SVGLengthがWebIDLの仕様と同期するよう修正
Webアニメーション
- width・heightがアニメーションによって変化する場合のパーセンテージ変換を修正
- アニメーションでtransformプロパティ値が暗黙的なキーフレームによって変化している間の表示更新を修正
- color-mix(指定複数色の混色)のアニメーション処理を修正
Web API
- cssTextのセッターの挙動について、シリアル化が異なる場合にstyle属性を変更するよう修正
- history.pushState()メソッド(セッション履歴への項目追加)およびhistory.replaceState()メソッド(既存履歴の編集)について、引数にtitleを入れても無視するよう修正
- URLのテキストフラグメントディレクティブがJavaScriptから完全に削除されない件を修正
- showPicker()メソッド(日時・色指定・ファイル名等のピッカーを表示)について、datalist要素からのおすすめをトリガーとするよう修正
- 名前空間のない部分でのlang属性について、HTMLおよびSVG要素にのみ適用されるよう修正
- iframeの全画面表示フラグを不必要に解除する件を修正
- CDATASectionノードを正しく扱えるようDOMの範囲を修正
- getGamepads()メソッド(接続中のゲームパッドの情報を出力)について、非セキュアコンテキスト(HTTP接続)の警告をトリガーとする機能を廃止するよう修正
- picture要素を挿入すると同じ画像を2回表示する件を修正
- ナビゲーションメソッドが分離状態にある場合に例外を送出するよう修正
- URLのホストセッターに関する細かい問題を修正
- DOM標準の明確化に伴い、ShadowRootノードのクローン生成を修正
- GeolocationCoordinatesインターフェイス(位置情報測位)がtoJSON()メソッドを使えるよう修正
- GeolocationPositionインターフェイス(位置情報測位)がtoJSON()メソッドを使えるよう修正
- イベントを分離するときにCustomEvent.targetにセットされる件を修正
- iOS 17.4において、navigator.languageプロパティ(ブラウザの言語設定)がシステム言語設定のみ返す件を修正
- hr要素(横線)のwidth属性からプレゼンテーションを削除
Webアプリ
- 全Webアプリの関連ドメインについて、wwwサブドメインによるドメイン解決を修正
Web Assembly
- ポータブル参照型グローバル変数の初期化を修正
Webインスペクタ
- [監査]タブのフォントサイズを修正
- [ストレージ]の開いたセクションが折りたたまれないように修正
- HTML/CSS解析で値を変更する際に、CSSのフォントプロパティ値で!importantをつけた部分が変更できない件を修正
- Webインスペクタのビューポートが切れて表示される件を修正
- [監査]タブでランタイムが調整されるよう修正
- [コンソール]タブでメッセージタイプの選択状態の保存について修正
- text-indentプロパティ(段落行頭の字下げ設定)の値のサジェストでeach-line(1行目に加えて2行目以降も字下げ)とhanging(1行目は字下げせず2行目以降のみ字下げ)をプレフィックスつきで表示していたのを修正
- backgroundプロパティ(背景)の自動補完サジェストにrepeating-conic-gradient(中心点からの角度で色が変わる反復放射グラデーション)が含まれるよう修正
- Webインスペクタを閉じて開きなおすとコンソールが予期しない表示クリアを起こす件を修正
- コンソールのコード自動補完について、大文字/小文字を区別するよう修正
- プロパティ指定でoverflow: scrollが付与された要素が、DOMツリーの要素をハイライトした状態でも意図した通りスクロールするよう修正
- iOSデバイスのSafariのタブが[開発]メニューに表示される件を修正
- [コンソール]およびコードエディタの補完で、サジェストが自動スクロールせず表示に入らない件を修正
- DOMツリー表示内の検索でテキスト表示が予期せず変更される件を修正
- 設定の「独立した"スタイル"サイドバーを表示」が無効になっているときに矢印をクリックするとCSS計算を行う件を修正
- visionOSシミュレーター内SafariのタブがホストmacOSの開発者メニューに表示されない件を修正
WebView
- WKWebView内のGamepad APIの動作を修正
- 旧形式WebViewで幅・高さが変更されたHTML要素が再描画される件を修正
WebRTC
- VideoTrackGeneratorの書き込みが、トラック(全クローン含む)が停止した場合に閉じられるよう修正
- iPhone 15 ProでのWebRTC AV1ハードウェアデコードを修正
- ウィンドウ単位の画面共有時に黒い縞模様が発生するのを修正
- getDisplayMediaメソッドでウィンドウをキャプチャ中にウィンドウサイズが変更されると黒い縞模様が発生するのを修正
※参照:News from WWDC24: WebKit in Safari 18 beta - WebKit Blog (2024/06/10)
https://webkit.org/blog/15443/news-from-wwdc24-webkit-in-safari-18-beta/
マックスマウスからのお知らせ
Web制作・マーケティング担当者向けのお役立ち情報をメールマガジンでお届け!
WebサイトやSNSでの情報発信の安定化・効率化、CMS導入・運用、脆弱性対策、Flashコンテンツ置き換え、Webプロモーションなどなど、Web制作・マーケティング関係者向けの課題解決に役立つ、便利なサービス情報や活用法などをご案内します。
いますぐご登録ください!