<!--
{
  "documentType" : "article",
  "framework" : "Safari Technology Preview Release Notes",
  "identifier" : "/documentation/Safari-Technology-Preview-Release-Notes/stp-release-243",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "Safari Technology Preview 243 Release Notes"
}
-->

# Safari Technology Preview 243 Release Notes

Learn about the latest web technology updates in Safari Technology Preview: Accessibility, Animations, CSS, Canvas, Editing, Encoding, Forms, HTML, JavaScript, Media, Networking, PDF, Rendering, SVG, Scrolling, Spatial Web, UI, Web API, Web Inspector, WebAssembly, WebGPU, and WebRTC.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 243 is now [available for download](https://developer.apple.com/safari/resources/) for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: [310600@main…312007@main](https://github.com/WebKit/WebKit/compare/f037d92e0ac2bad469eee55c1bb0447e004f6970...f6d1b6eb589dcf909f1770238f5a682260990f73).

### Accessibility

#### Resolved Issues

- Fixed an issue where the `contextmenu` event was not fired for elements inside iframes when triggered by keyboard or assistive technology actions such as VoiceOver’s VO+Shift+M. ([310897@main](https://commits.webkit.org/310897@main))  (164128676)
- Fixed an issue where color picker inputs could not be activated using VoiceOver’s press action. ([311168@main](https://commits.webkit.org/311168@main))  (172218114)
- Fixed invalidation of aria-hidden=“true” when focus lands inside the aria-hidden subtree. ([311648@main](https://commits.webkit.org/311648@main))  (174449524)
- Fixed VoiceOver support for base `<select>` elements, including closing the popover on selection and correcting accessibility path positioning when CSS transforms are present. ([311587@main](https://commits.webkit.org/311587@main))  (175058883)

### Animations

#### Resolved Issues

- Fixed an issue where `!important` declarations did not override CSS animation values when CSS transitions were also running on the same property. ([310810@main](https://commits.webkit.org/310810@main))  (174367827)
- Fixed an issue where identity matrix decomposition generated invalid quaternions, resulting in incorrect transform animations. ([311267@main](https://commits.webkit.org/311267@main))  (174813328)

### CSS

#### New Features

- Added support for `contain: style` applying to CSS quote counters, as specified in CSS Containment Level 2. ([311785@main](https://commits.webkit.org/311785@main))  (84758186)
- Added support for the `insert` keyword for the `text-autospace` property. ([311503@main](https://commits.webkit.org/311503@main))  (175031507)

#### Resolved Issues

- Fixed flex layout to use the used `flex-basis` instead of the specified value for definiteness evaluation. ([311579@main](https://commits.webkit.org/311579@main))  (85707621)
- Fixed an issue where element positioning was incorrect when the containing block was an anonymous block. ([311275@main](https://commits.webkit.org/311275@main))  (96548847)
- Fixed an issue where `box-shadow` did not work on `display: table-row` elements. ([310609@main](https://commits.webkit.org/310609@main))  (96914376)
- Fixed `text-indent` with `calc()` containing percentages to correctly treat percentage components as zero for intrinsic size contributions. ([310759@main](https://commits.webkit.org/310759@main))  (97025949)
- Fixed an issue where out-of-flow content had an incorrect height when set to `fit-content`. ([311375@main](https://commits.webkit.org/311375@main))  (97492632)
- Fixed an issue with percentage size resolution in flex items in quirks mode. ([311590@main](https://commits.webkit.org/311590@main))  (100183902)
- Fixed an issue where `clip-path: inset()` border-radius values did not render correctly at certain element and clip-path sizes. ([310643@main](https://commits.webkit.org/310643@main))  (110847266)
- Fixed `-webkit-box` flexbox emulation not sizing children correctly inside `<fieldset>` elements. ([311784@main](https://commits.webkit.org/311784@main))  (114094538)
- Fixed: Improved performance on pages using `:where` and `:is` selectors. ([311212@main](https://commits.webkit.org/311212@main))  (114904007)
- Fixed an issue where elements with `display: table` could have incorrect layout when borders were present. ([311276@main](https://commits.webkit.org/311276@main))  (116110440)
- Fixed an issue where elements with `border`, `position: absolute`, and `aspect-ratio: 1` were not rendered as squares. ([311310@main](https://commits.webkit.org/311310@main))  (126292577)
- Fixed an issue where `perspective-origin` failed to resolve `var()` references when used as the second value, preventing animations from being applied. ([310650@main](https://commits.webkit.org/310650@main))  (131288246)
- Fixed `:focus-visible` incorrectly matching after a programmatic `focus()` call triggered by clicking a button with child elements. ([311768@main](https://commits.webkit.org/311768@main))  (134337357)
- Fixed an issue where the bottom margin of a last child element collapsed out of a parent with `min-height`. ([311274@main](https://commits.webkit.org/311274@main))  (134356544)
- Fixed an issue where `:has(:empty)` continued to match after the targeted element’s content was dynamically changed to no longer be empty. ([310932@main](https://commits.webkit.org/310932@main))  (143864358)
- Fixed an issue where floats and out-of-flow objects could be incorrectly adjacent to anonymous blocks. ([311226@main](https://commits.webkit.org/311226@main))  (144481961)
- Fixed an issue where text gradually disappeared when toggling `text-transform` on elements with `::first-letter` styling. ([311201@main](https://commits.webkit.org/311201@main))  (145550507)
- Fixed an issue where `height: max-content` resolved to zero on absolutely positioned elements when a child had `max-height: 100%`. ([311084@main](https://commits.webkit.org/311084@main))  (147333178)
- Fixed an issue where an `inline-flex` container with `flex-direction: column` did not update its width to match the intrinsic size of a child image when the image was not cached. ([311141@main](https://commits.webkit.org/311141@main))  (150260401)
- Fixed an issue where non-replaced elements with `aspect-ratio` enforced the automatic minimum size even when `min-width` was explicitly set to `0`. ([311096@main](https://commits.webkit.org/311096@main))  (156837730)
- Fixed an issue where an element can’t anchor to its previous sibling. ([310970@main](https://commits.webkit.org/310970@main))  (162903640)
- Fixed a regression where `@scope` styles did not apply to slotted elements in web components. ([311333@main](https://commits.webkit.org/311333@main))  (171383788)
- Fixed an issue where dynamically inserting text before existing content did not update `::first-letter` styling. ([310719@main](https://commits.webkit.org/310719@main))  (171649994)
- Fixed an issue where ordered list numbers with large starting values were clipped off-screen. ([311332@main](https://commits.webkit.org/311332@main))  (172515216)
- Fixed a regression where the `ic` length unit was incorrectly affected by page scaling. ([311238@main](https://commits.webkit.org/311238@main))  (173198587)
- Fixed `:placeholder-shown` to correctly match input elements that have an empty `placeholder` attribute. ([310781@main](https://commits.webkit.org/310781@main))  (173604635)
- Fixed computed value of auto insets or margins as returned by `getComputedStyle()` to be zero, if the element uses `position-area` or `anchor-center`. ([311016@main](https://commits.webkit.org/311016@main))  (173885561)
- Fixed `position-area` not being able to anchor to an element positioned using anchor functions. ([311601@main](https://commits.webkit.org/311601@main))  (173964030)
- Fixed CSS variable cycle detection to match the CSS Values Level 5 specification. ([310610@main](https://commits.webkit.org/310610@main))  (174105259)
- Fixed `url()` token serialization in CSS custom properties. ([310628@main](https://commits.webkit.org/310628@main))  (174144616)
- Fixed `text-autospace` to correctly handle supplementary Unicode characters. ([310633@main](https://commits.webkit.org/310633@main))  (174148315)
- Fixed an issue where flex items with different `order` values caused incorrect baseline alignment. ([310704@main](https://commits.webkit.org/310704@main))  (174241817)
- Fixed an issue where hovering over `::first-letter` text showed a pointer cursor instead of the expected I-beam cursor. ([310730@main](https://commits.webkit.org/310730@main))  (174258447)
- Fixed an issue where `display: grid` on a `<fieldset>` element added extra unnecessary space below its content. ([311078@main](https://commits.webkit.org/311078@main))  (174301311)
- Fixed outline radii rendering for elements with a non-auto `outline-style`. ([310784@main](https://commits.webkit.org/310784@main))  (174328839)
- Fixed an issue where `aspect-ratio` was not honored when the page was zoomed in. ([310931@main](https://commits.webkit.org/310931@main))  (174361289)
- Fixed replaced elements to use the transferred size through intrinsic aspect ratio for min-content and max-content sizing. ([310885@main](https://commits.webkit.org/310885@main))  (174386310)
- Fixed an issue where `height: 100%` on a child element altered the layout when the parent’s height was defined via `aspect-ratio`. ([310877@main](https://commits.webkit.org/310877@main))  (174448267)
- Fixed margin collapse to be allowed when the preferred block size behaves as auto, per the CSS Sizing specification. ([311011@main](https://commits.webkit.org/311011@main))  (174547610)
- Fixed an issue where `document.styleSheets` and `shadowRoot.styleSheets` incorrectly included adopted style sheets, which per the CSSOM specification should only appear in the final CSS style sheets list used for style resolution. ([311074@main](https://commits.webkit.org/311074@main))  (174583340)
- Fixed the CSSOM preferred style sheet set name to be established at sheet creation time based on insertion order rather than tree order. ([311077@main](https://commits.webkit.org/311077@main))  (174586058)
- Fixed highlight pseudo-elements such as `::selection` and `::highlight` to disallow vendor-prefixed properties, aligning with the CSS Pseudo-Elements specification. ([311073@main](https://commits.webkit.org/311073@main))  (174590593)
- Fixed cycle detection and nested function call handling in CSS custom functions. ([311178@main](https://commits.webkit.org/311178@main))  (174609179)
- Fixed an issue where `word-break: break-all` incorrectly allowed CJK close punctuation to appear at the start of a line. ([311088@main](https://commits.webkit.org/311088@main))  (174656971)
- Fixed an issue where `word-break: keep-all` incorrectly suppressed line break opportunities at CJK punctuation characters. ([311090@main](https://commits.webkit.org/311090@main))  (174658701)
- Fixed the `FontFace` constructor to reject with a `SyntaxError` instead of a `NetworkError` when a `BufferSource` fails to parse, per the CSS Font Loading specification. ([311146@main](https://commits.webkit.org/311146@main))  (174669738)
- Fixed the `FontFace` `family` attribute to return the serialization of the parsed value. ([311478@main](https://commits.webkit.org/311478@main))  (174698351)
- Fixed grid layout to correctly handle percentage and `calc()` values for the specified size suggestion. ([311344@main](https://commits.webkit.org/311344@main))  (174863227)
- Fixed `:has()` sibling invalidation issues related to relation forwarding. ([311583@main](https://commits.webkit.org/311583@main))  (175006235)
- Fixed an issue where `min-width: auto` was not correctly computed for flex items. ([311578@main](https://commits.webkit.org/311578@main))  (175157619)
- Fixed an issue where percentage heights inside flex items did not resolve correctly in quirks mode. ([311581@main](https://commits.webkit.org/311581@main))  (175158571)
- Fixed an issue where `margin-trim: block-start` did not apply to blocks nested inside inline boxes. ([311584@main](https://commits.webkit.org/311584@main))  (175162899)
- Fixed an issue where dynamically changing `display: contents` on a `<fieldset>` legend caused incorrect rendering. ([311585@main](https://commits.webkit.org/311585@main))  (175163337)
- Fixed: Improved `:has()` invalidation performance by including the full selector context in invalidation selectors. ([311642@main](https://commits.webkit.org/311642@main))  (175177078)
- Fixed the CSS preload scanner to resolve relative `@import` URLs against the `<base>` element URL. ([311744@main](https://commits.webkit.org/311744@main))  (175305190)
- Fixed `-webkit-box` flex distribution for children with orthogonal writing modes. ([311787@main](https://commits.webkit.org/311787@main))  (175323734)
- Fixed `calc(infinity)` as a `flex-grow` factor not stretching a flex item to 100% width. ([311956@main](https://commits.webkit.org/311956@main))  (175431146)
- Fixed `:has()` sibling invalidation failing due to an internal bitfield overflow, causing stale styles when siblings are added or removed. ([311870@main](https://commits.webkit.org/311870@main))  (175433733)
- Fixed `:has()` invalidation for sibling combinators when elements are inserted or removed from the DOM. ([311893@main](https://commits.webkit.org/311893@main))  (175441568)
- Fixed `transition-property` not preserving the specified case of `<custom-ident>` values during serialization. ([311909@main](https://commits.webkit.org/311909@main))  (175467206)
- Fixed the `will-change` property not serializing correctly when used with non-property identifiers or identifiers in a non-standard case. ([311918@main](https://commits.webkit.org/311918@main))  (175482352)
- Fixed percentage `top` and `bottom` values on relatively positioned elements not resolving when the containing block has `aspect-ratio`. ([311942@main](https://commits.webkit.org/311942@main))  (175502356)
- Fixed: Updated the enhanced `<select>` element to use `self-*` keywords for anchor positioning. ([311944@main](https://commits.webkit.org/311944@main))  (175505107)
- Fixed `text-indent` computation when tab stop positions are involved. ([311971@main](https://commits.webkit.org/311971@main))  (175529961)
- Fixed `calc()` margin computations in flex layout. ([311977@main](https://commits.webkit.org/311977@main))  (175532405)
- Fixed `calc()` margin computations for block, fieldset, and table caption layouts. ([311987@main](https://commits.webkit.org/311987@main))  (175548980)
- Fixed handling of `<li>` `value` attributes in reversed ordered lists. ([311996@main](https://commits.webkit.org/311996@main))  (175558324)

### Canvas

#### Resolved Issues

- Fixed an issue where conic gradients applied to canvas arc strokes were not rendered correctly. ([310865@main](https://commits.webkit.org/310865@main))  (173536875)

### Editing

#### Resolved Issues

- Fixed an issue where characters styled with `::first-letter` were not selectable. ([311287@main](https://commits.webkit.org/311287@main))  (5688237)
- Fixed font size 13pt being incorrectly mapped to `<font size="2">` (10pt) when using rich text editing. ([311700@main](https://commits.webkit.org/311700@main))  (15292320)
- Fixed an issue where adjusting text selection with touch handles was prevented by JavaScript touch event handling on some websites. ([311216@main](https://commits.webkit.org/311216@main))  (151851274)
- Fixed an issue where text selection was lost when focus transitioned from a `contentEditable` element to a non-editable target. ([310670@main](https://commits.webkit.org/310670@main))  (171221909)

### Encoding

#### Resolved Issues

- Fixed an issue where CJK encoding state was not reset appropriately during text decoding. ([311075@main](https://commits.webkit.org/311075@main))  (174649963)

### Forms

#### Resolved Issues

- Fixed an issue where `<select>` control rendering was broken in vertical writing mode. ([310622@main](https://commits.webkit.org/310622@main))  (174068353)
- Fixed a performance issue where parsing `<select>` elements with thousands of `<option>` children via `innerHTML` caused O(n²) overhead due to repeated list recalculation. ([310930@main](https://commits.webkit.org/310930@main))  (174244946)
- Fixed an issue where date and time input types without `min` or `max` attributes incorrectly matched the `:in-range` pseudo-class. ([311279@main](https://commits.webkit.org/311279@main))  (174829899)
- Fixed an issue where cloned `<input>` and `<textarea>` elements did not preserve their user-modified state. ([311346@main](https://commits.webkit.org/311346@main))  (174892989)
- Fixed `<option>` elements to correctly implement the HTML specification’s dirtiness concept for tracking user-modified `selected` state. ([311746@main](https://commits.webkit.org/311746@main))  (175306111)
- Fixed the default `display` value for `<optgroup>` and `<option>` elements to `block`, matching the behavior of other browsers. ([311911@main](https://commits.webkit.org/311911@main))  (175473184)

### HTML

#### New Features

- Added support for the `shadowrootslotassignment` attribute on declarative shadow roots. ([311295@main](https://commits.webkit.org/311295@main))  (173227340)

#### Resolved Issues

- Fixed parsing of `javascript:` URLs to align with the specification. ([311381@main](https://commits.webkit.org/311381@main))  (147612682)
- Fixed the HTML preload scanner to skip preloading stylesheets that have the `disabled` attribute. ([311776@main](https://commits.webkit.org/311776@main))  (173378582)
- Fixed document named item collection to include all `<object>` elements, aligning with other browser engines. ([310974@main](https://commits.webkit.org/310974@main))  (174537345)
- Fixed `window.open()` to correctly consume user activation when creating a new browsing context, aligning with the HTML specification. ([311026@main](https://commits.webkit.org/311026@main))  (174587258)
- Fixed remaining issues with `<img sizes="auto">` to fully align with the specification. ([311138@main](https://commits.webkit.org/311138@main))  (174684058)
- Fixed an issue where `dir=auto` on `<slot>` elements did not update when slotted content changed. ([311325@main](https://commits.webkit.org/311325@main))  (174871706)
- Fixed an issue where `<option>` elements rendered incorrectly when the `label` attribute was empty. ([311421@main](https://commits.webkit.org/311421@main))  (174979446)
- Fixed an issue where the preload scanner incorrectly skipped `<source>` elements with an empty `type` attribute inside `<picture>`. ([311568@main](https://commits.webkit.org/311568@main))  (175094037)
- Fixed `innerText` to emit a newline for empty `<option>` or `<optgroup>` inside `<select>`. ([311673@main](https://commits.webkit.org/311673@main))  (175245381)
- Fixed HTML floating-point number parsing to correctly handle values with a leading `+` sign. ([311735@main](https://commits.webkit.org/311735@main))  (175300431)
- Fixed keyboard focus getting stuck when tabbing through iframes that do not contain any focusable elements. ([311922@main](https://commits.webkit.org/311922@main))  (175375806)

#### Deprecations

- Deprecated the `href` attribute on all MathML elements except `<a>`. ([311550@main](https://commits.webkit.org/311550@main))  (173996661)

### JavaScript

#### Resolved Issues

- Fixed multiple top-level await correctness bugs with a rewrite of the ES module loader for standards compliance. ([311236@main](https://commits.webkit.org/311236@main))  (97370038)
- Fixed regular expressions in Unicode mode to not count non-capturing groups and modifiers toward the number of available backreferences. ([311974@main](https://commits.webkit.org/311974@main))  (167746769)
- Fixed an issue where regular expressions with non-BMP characters could skip valid match positions when alternating between patterns. ([310677@main](https://commits.webkit.org/310677@main))  (174200307)
- Fixed an issue where regular expression captures were not properly cleared when backtracking out of fixed-count parenthesized groups and negative lookaheads. ([310679@main](https://commits.webkit.org/310679@main))  (174201284)
- Fixed an issue where `import { "*" as x }` was incorrectly treated as a namespace import instead of a named import using the string `"*"` as a ModuleExportName. ([310776@main](https://commits.webkit.org/310776@main))  (174314099)
- Fixed an issue where `RegExp.prototype.exec` and `RegExp.prototype.test` could match against a stale pattern if `lastIndex` has a `valueOf` that calls `RegExp.prototype.compile`. ([310887@main](https://commits.webkit.org/310887@main))  (174461752)
- Fixed an issue where async functions using module-scoped variables could fail when the DFG JIT optimized scope resolution. ([311044@main](https://commits.webkit.org/311044@main))  (174626957)
- Fixed an issue where `Intl.Segmenter` with `granularity: "word"` incorrectly reported `isWordLike: false` for numeric segments. ([311507@main](https://commits.webkit.org/311507@main))  (175057894)
- Fixed `Object.defineProperties` to call Proxy traps in the correct order. ([311520@main](https://commits.webkit.org/311520@main))  (175068687)
- Fixed an issue where `Intl.Locale` did not canonicalize before overriding the language. ([311538@main](https://commits.webkit.org/311538@main))  (175092327)
- Fixed time zone identifiers to return primary IANA time zone IDs instead of legacy ICU identifiers. ([311604@main](https://commits.webkit.org/311604@main))  (175098682)
- Fixed `Intl.DateTimeFormat` to preserve the original legacy timezone identifier instead of replacing it with the primary IANA ID. ([311724@main](https://commits.webkit.org/311724@main))  (175206605)
- Fixed `Promise.prototype.finally` to throw a `TypeError` when `@@species` is not a constructor, matching the behavior of other browsers. ([311725@main](https://commits.webkit.org/311725@main))  (175290627)
- Fixed the regular expression engine to reject dangling hyphens in character class syntax when using the `/v` flag. ([311999@main](https://commits.webkit.org/311999@main))  (175559808)

### Media

#### New Features

- Added support for setting `TextTrackCue.endTime` to `Infinity` to represent an unbounded cue duration. ([311730@main](https://commits.webkit.org/311730@main))  (71042767)

#### Resolved Issues

- Fixed an issue on iPad where exiting fullscreen on a media document incorrectly navigated back to the previous page instead of returning to the inline view. ([310718@main](https://commits.webkit.org/310718@main))  (137220651)
- Fixed an issue where the darkening overlay on inline video controls made accurate scrubbing difficult and displayed video content incorrectly on macOS. ([311473@main](https://commits.webkit.org/311473@main))  (161271114)
- Fixed `HTMLMediaElement.currentTime` to report smoothly progressing values instead of updating only at fixed intervals. ([311867@main](https://commits.webkit.org/311867@main))  (170115677)
- Fixed Encrypted Media Extensions to check support for the full content type including codecs, rather than only the MIME type. ([310696@main](https://commits.webkit.org/310696@main))  (173852931)
- Fixed an issue where the volume slider in video media controls could not be dragged. ([311328@main](https://commits.webkit.org/311328@main))  (174179871)
- Fixed an issue where setting `HTMLMediaElement.volume` had no effect when the element was connected to an `AudioContext`. ([310958@main](https://commits.webkit.org/310958@main))  (174278899)
- Fixed a regression where videos would stop playing and lose audio after a few seconds on some websites. ([311698@main](https://commits.webkit.org/311698@main))  (174966899)
- Fixed an issue where U+0000 (NULL) characters were not allowed in `VTTCue` text content. ([311539@main](https://commits.webkit.org/311539@main))  (175084171)
- Fixed video content disappearing after switching to another tab and back. ([311771@main](https://commits.webkit.org/311771@main))  (175257980)
- Fixed WebVTT cue settings line parsing failures. ([311729@main](https://commits.webkit.org/311729@main))  (175296476)

### Networking

#### Resolved Issues

- Fixed redirects to `data:` URLs to be blocked for subresources such as images and scripts, aligning with the Fetch specification. ([311023@main](https://commits.webkit.org/311023@main))  (74165956)
- Fixed an issue where the multipart form data parser incorrectly required CRLF after the closing delimiter, causing some web applications to fail to render correctly. ([311089@main](https://commits.webkit.org/311089@main))  (174348783)

### PDF

#### Known Issues

- Fixed PDF scrollbars to adapt to dark appearance. ([311985@main](https://commits.webkit.org/311985@main))  (174763396)

### Rendering

#### Resolved Issues

- Fixed an issue where `::first-letter` styles caused `Range.getClientRects()` and `Range.getBoundingClientRect()` to return incorrect dimensions. ([311085@main](https://commits.webkit.org/311085@main))  (71546397)
- Fixed incorrect distributed height in table rows when a `<td>` element has an explicit height set. ([311001@main](https://commits.webkit.org/311001@main))  (78549188)
- Fixed `position: relative` on table rows (`<tr>`) to correctly establish a containing block for absolutely positioned descendants. ([310995@main](https://commits.webkit.org/310995@main))  (94294819)
- Fixed incorrect box sizing on inline elements when they have no siblings and their `padding-left` plus `margin-left` equals zero. ([311080@main](https://commits.webkit.org/311080@main))  (162376969)
- Fixed an issue where space-taking scrollbars did not trigger a proper re-layout when the box size depends on content size. ([311766@main](https://commits.webkit.org/311766@main))  (166836126)
- Fixed an issue where images with `min-width: fit-content` rendered at an incorrect width. ([310994@main](https://commits.webkit.org/310994@main))  (169359566)
- Fixed an issue where overlay backgrounds would briefly dim incorrectly when de-compositing in a scrollable container. ([311198@main](https://commits.webkit.org/311198@main))  (171024685)
- Fixed a regression where table content intermittently disappeared and reappeared. ([311411@main](https://commits.webkit.org/311411@main))  (171179878)
- Fixed an issue with outside list markers when blockification prevents line-box parenting. ([311221@main](https://commits.webkit.org/311221@main))  (173417560)
- Fixed an inverted Y-axis comparison that could cause incorrect caret positioning. ([310626@main](https://commits.webkit.org/310626@main))  (174144220)
- Fixed an issue where `<br>` elements with `line-height: 0` still created extra vertical space, failing to respect the declared line height. ([310839@main](https://commits.webkit.org/310839@main))  (174400946)
- Fixed auto outlines to more closely follow the border radii of elements. ([310900@main](https://commits.webkit.org/310900@main))  (174466854)
- Fixed rendering of gradients in non-sRGB color spaces. ([311406@main](https://commits.webkit.org/311406@main))  (174880197)
- Fixed `image-orientation` being ignored for `background-image`, `border-image`, and `list-style-image`. ([311390@main](https://commits.webkit.org/311390@main))  (174894122)
- Fixed a `white-space: pre-wrap` layout issue with justified text. ([311385@main](https://commits.webkit.org/311385@main))  (174937310)
- Fixed an issue where minimum height was not correctly computed for flex items. ([311443@main](https://commits.webkit.org/311443@main))  (174999995)
- Fixed an issue with `flex-wrap` and flex factor computation for wrapping flex items. ([311456@main](https://commits.webkit.org/311456@main))  (175012395)
- Fixed vertical `writing-mode` content incorrectly wrapping when the parent has `auto` height. ([311630@main](https://commits.webkit.org/311630@main))  (175123356)
- Fixed minimum height calculation for flex items. ([311623@main](https://commits.webkit.org/311623@main))  (175195518)
- Fixed incorrect bounding box position for newline characters. ([311668@main](https://commits.webkit.org/311668@main))  (175243361)

### SVG

#### Resolved Issues

- Fixed an issue where backslash-escaped dot characters in SVG animation timing attribute ID references were not parsed correctly. ([310805@main](https://commits.webkit.org/310805@main))  (94260935)
- Fixed SVG2 systemLanguage attribute to improve parsing and compliance with the specification. ([311439@main](https://commits.webkit.org/311439@main))  (116427520)
- Fixed the SMIL `values` attribute to preserve empty values and handle trailing semicolons. ([311502@main](https://commits.webkit.org/311502@main))  (173594455)
- Fixed SVG2 `getStartPositionOfChar` and `getEndPositionOfChar` to be more compliant with the specification. ([311450@main](https://commits.webkit.org/311450@main))  (174145885)
- Fixed SVG intrinsic aspect ratio being incorrectly suppressed when `preserveAspectRatio` is set to `none`. ([311723@main](https://commits.webkit.org/311723@main))  (175173375)
- Fixed SVG images without complete intrinsic dimensions incorrectly using ratio-based scaling for `background-size`. ([311817@main](https://commits.webkit.org/311817@main))  (175345107)

### Scrolling

#### Resolved Issues

- Fixed an issue where tabbing in a scroll container with `scroll-padding` did not scroll the focused element into view. ([311512@main](https://commits.webkit.org/311512@main))  (147513379)
- Fixed rubberbanding behaving incorrectly when a site triggers a smooth scroll to the top during a rubberband. ([311641@main](https://commits.webkit.org/311641@main))  (170705188)
- Fixed an issue on iOS where composited layers would briefly flash blank when `window.scrollTo()` was called synchronously with a DOM layout change. ([310864@main](https://commits.webkit.org/310864@main))  (173197381)
- Fixed an issue where calling `scrollIntoView()` on a scrollable element incorrectly scrolled the element’s own contents. ([310734@main](https://commits.webkit.org/310734@main))  (174173683)
- Fixed scroll anchoring interfering with rubberbanding on some websites. ([311686@main](https://commits.webkit.org/311686@main))  (175195943)

### Spatial Web

#### Resolved Issues

- Fixed an issue on visionOS where fullscreen video would sometimes jump when exiting fullscreen if the browser window was narrower than the video. ([311116@main](https://commits.webkit.org/311116@main))  (174454557)

### UI

#### Resolved Issues

- Fixed: Tab key behaves incorrectly inside a PopupMenu  (174468005)

### Web API

#### Resolved Issues

- Fixed Web IDL bindings to correctly reject `SharedArrayBuffer` where `[AllowShared]` is not specified. ([311536@main](https://commits.webkit.org/311536@main))  (107786134)
- Fixed an issue on visionOS where the `gamepadconnected` event did not fire unless gamepad permission had already been granted. ([311465@main](https://commits.webkit.org/311465@main))  (141623162)
- Fixed an issue where `CSPViolationReportBody` did not include the source line number in Content Security Policy violation reports. ([311040@main](https://commits.webkit.org/311040@main))  (152607402)
- Fixed an issue where `history.replaceState()` on a traversed history entry incorrectly changed `navigation.currentEntry.key` to a new UUID instead of preserving the original key. ([310849@main](https://commits.webkit.org/310849@main))  (173388766)
- Fixed the Credential Management API to properly define which credential types are allowed in the same `get()` request. ([311988@main](https://commits.webkit.org/311988@main))  (173918198)
- Fixed an issue where `event.target` was not set after dispatching an event in a shadow tree with no listeners. ([310621@main](https://commits.webkit.org/310621@main))  (174136382)
- Fixed an issue where `navigator.credentials.create()` and `navigator.credentials.get()` discarded the `AbortSignal` reason and always rejected with a generic `AbortError`. ([310782@main](https://commits.webkit.org/310782@main))  (174220589)
- Fixed a missing `return` in the Navigation API’s `performTraversal` that caused incorrect behavior when traversing to an unknown key. ([311161@main](https://commits.webkit.org/311161@main))  (174513305)
- Fixed `Range.extractContents()` to not extract out-of-bounds nodes when the end container is removed during extraction. ([310770@main](https://commits.webkit.org/310770@main))  (174307275)
- Fixed `document.createEvent()` to throw an exception for `"MutationEvents"`, `"MutationEvent"`, `"PopStateEvent"`, and `"WheelEvent"`, aligning with other browser engines. ([310792@main](https://commits.webkit.org/310792@main))  (174339775)
- Fixed `ParentNode.append()` to correctly de-duplicate nodes when the same node is passed multiple times. ([310807@main](https://commits.webkit.org/310807@main))  (174365465)
- Fixed an issue where `MutationObserver` delivered `childList` records in the wrong order when script ran during node insertion. ([310812@main](https://commits.webkit.org/310812@main))  (174368989)
- Fixed an issue where setting a `URL` object’s `port` property to whitespace behaved incorrectly. ([310919@main](https://commits.webkit.org/310919@main))  (174484035)
- Fixed `Blob.slice()` to correctly clamp fractional `start` and `end` parameters using round-half-to-even rounding per the File API specification, which may change how edge-case fractional values like `0.5` are rounded. ([310992@main](https://commits.webkit.org/310992@main))  (174555334)
- Fixed `postMessage()` to validate transferable object states after serialization, aligning with the HTML specification. ([310996@main](https://commits.webkit.org/310996@main))  (174558047)
- Fixed `structuredClone()` and `window.postMessage()` to correctly throw a `DataCloneError` when serializing a `SharedArrayBuffer` outside of cross-origin isolated contexts. ([310998@main](https://commits.webkit.org/310998@main))  (174562553)
- Fixed an issue where calling `Element.blur()` on an `<iframe>` did not reset `document.activeElement` to `<body>`. ([311452@main](https://commits.webkit.org/311452@main))  (174591529)
- Fixed `document.styleSheets` to be accessible on documents created by `DOMParser`. ([311043@main](https://commits.webkit.org/311043@main))  (174625774)
- Fixed `innerText` getter to correctly handle trailing newlines and blank lines for `<p>` elements and headings. ([311057@main](https://commits.webkit.org/311057@main))  (174642704)
- Fixed `innerText` whitespace handling at inline-block boundaries. ([311163@main](https://commits.webkit.org/311163@main))  (174713114)
- Fixed `XMLSerializer` namespace handling to correctly serialize elements with namespace prefixes. ([311184@main](https://commits.webkit.org/311184@main))  (174726401)
- Fixed the `innerText` getter to preserve newlines for elements with `white-space: pre-line`. ([311185@main](https://commits.webkit.org/311185@main))  (174727341)
- Fixed `innerText` handling of replaced elements at block boundaries. ([311269@main](https://commits.webkit.org/311269@main))  (174816319)
- Fixed `EventSource` to be closed when `window.stop()` is called. ([311281@main](https://commits.webkit.org/311281@main))  (174830925)
- Fixed `innerText` to not fall back to `textContent` for elements with `display: contents`. ([311339@main](https://commits.webkit.org/311339@main))  (174883499)
- Fixed `innerText` to preserve the contents of `<option>` elements inside `<select>`. ([311449@main](https://commits.webkit.org/311449@main))  (175006854)
- Fixed `Element.innerText` to collect option text when called directly on a `<select>` element. ([311576@main](https://commits.webkit.org/311576@main))  (175156630)
- Fixed worker scripts to always be decoded as UTF-8, as per the specification. ([311761@main](https://commits.webkit.org/311761@main))  (175327455)
- Fixed an issue where ancestors of `TreeWalker.currentNode` could be prematurely garbage collected. ([311873@main](https://commits.webkit.org/311873@main))  (175442228)

### Web Extensions

#### New Features

- Added reporting of uncaught JavaScript exceptions and unhandled promise rejections in Web Extension scripts. ([311150@main](https://commits.webkit.org/311150@main))  (174354070)

#### Resolved Issues

- Fixed `browser.i18n.getMessage()` to correctly substitute named placeholders when they appear adjacent to non-space characters. ([311685@main](https://commits.webkit.org/311685@main))  (169146196)
- Fixed `browser.i18n.getMessage()` to correctly substitute two adjacent named placeholders. ([311769@main](https://commits.webkit.org/311769@main))  (175315700)

### Web Inspector

#### New Features

- Added Subgrid and Grid-Lanes badges to the Elements tab for easier identification of subgrid and grid-lanes layout contexts. ([310936@main](https://commits.webkit.org/310936@main))  (173681497)
- Added the layout root element to Layout event details in the Timeline tab. ([311847@main](https://commits.webkit.org/311847@main))  (175419350)

#### Resolved Issues

- Fixed editing  inline `style` attribute values in the Elements panel resulting in truncated or malformed content. ([311717@main](https://commits.webkit.org/311717@main))  (149523483)
- Fixed the Network tab filtering by resource type not working after clearing a filter that had no matches. ([311947@main](https://commits.webkit.org/311947@main))  (161570940)
- Fixed an issue where CSS rules added via the “Add New Rule” button in the Styles panel were intermittently not applied or would vanish after entering a property. ([310921@main](https://commits.webkit.org/310921@main))  (164971557)
- Fixed an issue by removing a setting that incorrectly blocked the WebInspector service in the sandbox. ([310631@main](https://commits.webkit.org/310631@main))  (173330816)
- Fixed an issue where the debugger selected the wrong thread when multiple WebAssembly virtual machines stopped simultaneously. ([310847@main](https://commits.webkit.org/310847@main))  (174187067)
- Fixed the Layers 3D view to correctly map textures to composited bounds and use proper selection highlighting instead of tinting textures. ([310891@main](https://commits.webkit.org/310891@main))  (174355052)
- Fixed the Layers 3D view to re-snapshot preserved layers after a repaint instead of displaying stale textures. ([310892@main](https://commits.webkit.org/310892@main))  (174358757)
- Fixed an issue where Web Inspector showed empty source information for WebAssembly modules compiled via `WebAssembly.instantiateStreaming`. ([310852@main](https://commits.webkit.org/310852@main))  (174362152)
- Fixed Web Inspector to display meaningful names for WebAssembly modules derived from the name section and source URL instead of address-based fallback names. ([310961@main](https://commits.webkit.org/310961@main))  (174465437)
- Fixed an issue where all folder tree elements were expanded after filtering for a resource in the Sources panel. ([311459@main](https://commits.webkit.org/311459@main))  (175009135)
- Fixed an erroneous “There are unread messages that have been filtered” banner appearing in the Console when `console.groupCollapsed()` is used. ([311764@main](https://commits.webkit.org/311764@main))  (175279759)
- Fixed an issue in the Storage tab where filtering by storage type did not reveal the popup with options. ([311945@main](https://commits.webkit.org/311945@main))  (175444192)

### WebAssembly

#### Resolved Issues

- Fixed incorrect `IntegerOverflow` exceptions thrown by `i32.rem_s`, `i64.rem_s`, `i32.div_u`, `i64.div_u`, `i32.rem_u`, and `i64.rem_u` when both operands are constants. ([311898@main](https://commits.webkit.org/311898@main))  (175122462)

### WebGPU

#### New Features

- Added support for the `clip_distances` builtin value in WGSL shaders. ([311824@main](https://commits.webkit.org/311824@main))  (129202606)

#### Resolved Issues

- Fixed rendering failing when using direct `GPUTexture` objects instead of `GPUTextureView` with multisampled resolve targets in render passes. ([311938@main](https://commits.webkit.org/311938@main))  (175452924)

### WebRTC

#### Resolved Issues

- Fixed WebRTC VP9 encoders to correctly propagate frame colorspace information. ([311065@main](https://commits.webkit.org/311065@main))  (174008548)
- Fixed a regression where `RTCPeerConnection` with `iceTransportPolicy: "relay"` failed to gather ICE candidates. ([311432@main](https://commits.webkit.org/311432@main))  (174794660)
- Fixed `RTCInboundRtpStreamStats.trackIdentifier` to match `MediaStreamTrack.id`. ([311455@main](https://commits.webkit.org/311455@main))  (174938984)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)