期間: 2026-09-28 〜 2026-09-30 · PR 2 件(新機能 0 / 変更・修正 2 / その他 0)

新機能

なし

変更・修正

select の子孫にあるすべての selectedcontent 要素を最新に保つように(#12263)

Before

select 要素の子孫のうち、最初の selectedcontent 要素だけが最新の状態に保たれていた。それを削除すると、削除手順(removing steps)の中で次の selectedcontent を更新するため、ツリーが不整合な状態のまま変更されていた。

After

無効(disabled)でない子孫の selectedcontent 要素はすべて最新に保たれ、1 つを削除しても他には影響しない。無効かどうかは挿入時に決まり、入れ子になった selectedcontent は更新されない。option の削除・移動や selectedcontent の移動による更新はマイクロタスクで行われる(選択済み option や selectedcontent の挿入は引き続き同期的に更新)。

あわせて次の点も変わった。

  • select 要素のリセットアルゴリズムと、option 要素の selected セッターが selectedcontent を更新するようになった
  • select の multiple・size 属性、option・optgroup の disabled 属性、option の selected 属性を変更すると、選択状態の設定アルゴリズム(selectedness setting algorithm)が走り、必要に応じて selectedcontent が更新される。multiple 属性を削除したときは最初の選択済み option が残る
  • select 要素の祖先を削除しても、その option 要素と select の関連付けが外れなくなった
  • HTMLSelectElement の selectedIndex・value、HTMLOptionsCollection の selectedIndex、HTMLOptionElement の selected に [CEReactions] が付いた(設定によってカスタム要素が複製されうるため)

⏳ 未リリース · トピック: select要素

lazy-loading のメディアで source 挿入時に load イベントを遅延させないよう修正(#12972)

Before

リソース選択アルゴリズムが source 要素を待っている間に source が挿入されると、load イベントを遅延させるフラグ(delaying-the-load-event flag)が無条件に立てられ、リソース取得アルゴリズムの lazy の分岐ではこのフラグが解除されなかった(#12971)。

After

lazy-loading のメディアでは、source の挿入で load イベントが遅延しないようにした。最近追加されたメディアの loading 属性(#11980)のバグ修正で、Chromium はすでにテストに合格している(Gecko・WebKit はメディア要素の loading を未実装)。テストは web-platform-tests/wpt#62832。

⏳ 未リリース · トピック: メディア要素

その他

なし