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

# Safari Technology Preview 156 Release Notes

Preview the latest web technology updates including: Web Inspector, CSS, JavaScript, Rendering, Media, Web Animations, Accessibility, Web API, Safari Extensions, and bug fixes.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 156 is now [available for download](https://webkit.org/downloads/) for macOS Monterey 12.3 or later and macOS Ventura beta. If you already have Safari Technology Preview installed, you can update in the Software Update pane of System Preferences on macOS Monterey, or System Settings under General → Software Update on macOS Ventura.

This release includes WebKit changes between: [254352@main…255076@main](https://github.com/WebKit/WebKit/compare/6605a931f44b00ba57de58188755ee38d2ca2f83...171714d05e199d70810d76acfe3394583629ad4e)

**Note:** Shared Tab Groups and syncing for Tab Groups, Website Settings, and Web Extensions are not enabled in this release.

### Web Inspector

- Elements Tab
  - Fixed Computed details sidebar panel scrolling back to the top when `<style>` is added to page ([255001@main](https://commits.webkit.org/255001@main))
  - Fixed the DOM tree missing parts of the tree when inspecting iOS ([254744@main](https://commits.webkit.org/254744@main))
  - Improved the visual hierarchy of the Layout details sidebar panel ([254637@main](https://commits.webkit.org/254637@main))
- Console Tab
  - Added support for console snippets ([254636@main](https://commits.webkit.org/254636@main))

### CSS

- Changed to not consider min- or max-sizes when computing width as flex base size ([255002@main](https://commits.webkit.org/255002@main))
- Changed to omit the integer value for grid-lines when it’s the default value ([254821@main](https://commits.webkit.org/254821@main))
- Changed to choose the closest snap target if neither are visible ([254982@main](https://commits.webkit.org/254982@main))
- Fixed focus to not take into account scroll margin for visibility check ([254732@main](https://commits.webkit.org/254732@main))
- Fixed `text-align-last` causing a table to take full space ([254725@main](https://commits.webkit.org/254725@main))
- Made resnap follow scroll snap target if necessary ([254773@main](https://commits.webkit.org/254773@main))
- Updated the named colors list to match CSS Color 4 ([254840@main](https://commits.webkit.org/254840@main))

### JavaScript

- Added support for all rounding modes in `Temporal` (Behind the `--useTemporal` flag) ([255068@main](https://commits.webkit.org/255068@main))
- Accelerated baseline `String#replace` performance ([254659@main](https://commits.webkit.org/254659@main), [254717@main](https://commits.webkit.org/254717@main))
- Implemented `Intl.DurationFormat` ([254791@main](https://commits.webkit.org/254791@main))
- Implemented `Temporal.PlainDate#{since, until}` (Behind the `--useTemporal` flag) ([254780@main](https://commits.webkit.org/254780@main))
- Optimized `String#substring` ([255030@main](https://commits.webkit.org/255030@main))

### Rendering

- Changed to avoid line breaks before whitespace content when `line-break: after-white-space` is present ([254826@main](https://commits.webkit.org/254826@main))
- Fixed content placement when `first-line` style is present in non-quirks mode ([255069@main](https://commits.webkit.org/255069@main))
- Fixed `<select>` controls rendering for `size=2` or `size=3` ([254698@main](https://commits.webkit.org/254698@main))
- Fixed negative `z-index` layers from triggering unnecessary compositing of foreground layers ([254746@main](https://commits.webkit.org/254746@main))

### Media

- Adjusted buffering rate monitor to react faster ([254781@main](https://commits.webkit.org/254781@main))
- Implemented `EncodedVideoChunk` ([254953@main](https://commits.webkit.org/254953@main))
- Updated MediaSessionInfo media elements with a `srcObject` ([254948@main](https://commits.webkit.org/254948@main))
- Fixed returning animation from picture-in-picture to Element Fullscreen sometimes breaking ([255041@main](https://commits.webkit.org/255041@main))

### Web Animations

- Fixed additive and accumulative color blending to yield intermediary out-of-bounds values ([254850@main](https://commits.webkit.org/254850@main))

### Accessibility

- Ignored `<option>` element while building accessibility tree when `<select>` is hidden ([254970@main](https://commits.webkit.org/254970@main))
- Integrated ARIA element reflection in the Accessibility Tree ([254905@main](https://commits.webkit.org/254905@main), [254985@main](https://commits.webkit.org/254985@main))
- Implemented ARIA `id-ref` reflection for ElementInternals ([254709@main](https://commits.webkit.org/254709@main))
- Made custom element’s default ARIA `id-ref` work with shadow DOM ([254762@main](https://commits.webkit.org/254762@main))

### Web API

- Enabled constructible and adoptable CSSStyleSheet objects ([255067@main](https://commits.webkit.org/255067@main))
- Enabled smooth keyboard scrolling by default ([255031@main](https://commits.webkit.org/255031@main))
- Added support for extended color animation interpolation ([254960@main](https://commits.webkit.org/254960@main))
- Added ImageBitmapRenderingContext support to OffscreenCanvas ([254697@main](https://commits.webkit.org/254697@main))
- Aligned the user-agent stylesheet for `<abbr>` and `<acronym>` with the HTML Spec ([254710@main](https://commits.webkit.org/254710@main))
- Consider Container Percentage Sizes When Determining Definite Cross Size ([254758@main](https://commits.webkit.org/254758@main))
- Convert HDR video frames to SDR when drawing to canvas ([254973@main](https://commits.webkit.org/254973@main))
- Changed to not suppress the click event on `<textarea>` resize ([254843@main](https://commits.webkit.org/254843@main))
- Changed to recompute transforms on SVG containers if the bounds changed during layout ([255060@main](https://commits.webkit.org/255060@main))
- Exposed the Notification API to dedicated workers ([254805@main](https://commits.webkit.org/254805@main))
- Fixed smooth keyboard scrolling to account for fixed content ([254963@main](https://commits.webkit.org/254963@main))
- Fixed `document.open()` to abort all loads when the document is navigating ([254699@main](https://commits.webkit.org/254699@main))
- Fixed `document.open()` to remove the initial `about:blank`-ness of the document ([254747@main](https://commits.webkit.org/254747@main))
- Fixed FetchEvent to not start its navigation preload response load if the preload was already used ([254992@main](https://commits.webkit.org/254992@main))
- Fixed `Clear-Site-Data: "cache"` HTTP header to clear the back-forward cache ([254798@main](https://commits.webkit.org/254798@main))
- Fixed calculation of direction for text form control elements with `dir="auto"` ([254943@main](https://commits.webkit.org/254943@main))
- Fixed mutating keyframes via CSSOM to not set disabled properties ([254998@main](https://commits.webkit.org/254998@main))
- Fixed `strokeStyle` changes not being applied for successive stroke line operations ([254889@main](https://commits.webkit.org/254889@main))
- Fixed elements with `background-attachment: fixed` to behave like `background-attachment: scroll` inside transformed elements ([255055@main](https://commits.webkit.org/255055@main))
- Fixed `getBoundingClientRect()` returning the wrong value for `<tr>`, `<td>` and its descendants for a vertical table ([254918@main](https://commits.webkit.org/254918@main))
- Fixed `getComputedStyle()` on a `transform` property to return the function list ([254760@main](https://commits.webkit.org/254760@main))
- Fixed `click()` for invisible `<summary>` elements to toggle the `<details>` element ([255073@main](https://commits.webkit.org/255073@main))
- Fixed percentage-based translations for SVG `<text>` ([254656@main](https://commits.webkit.org/254656@main), [254777@main](https://commits.webkit.org/254777@main))
- Fixed `specified` hue interpolation method for hues less than 0 or greater than 360 ([254833@main](https://commits.webkit.org/254833@main))
- Implemented `import.meta.resolve()` ([254691@main](https://commits.webkit.org/254691@main))
- Implemented `importmaps` ([254987@main](https://commits.webkit.org/254987@main))
- Implemented support for the `Clear-Site-Data` HTTP header ([254745@main](https://commits.webkit.org/254745@main))
- Made ElementInternals conditional on the form associated custom elements ([254920@main](https://commits.webkit.org/254920@main))
- Restricted `transferSize`, `encodedBodySize`, and `decodedBodySize` methods of PerformanceServerTiming and PerformanceResourceTiming to same-origin requests ([254922@main](https://commits.webkit.org/254922@main))
- Fixed `SVG.currentScale` to only set the page zoom for a standalone SVG ([254787@main](https://commits.webkit.org/254787@main))
- Prototyped declarative Shadow DOM ([254964@main](https://commits.webkit.org/254964@main))
- Prototyped streaming for declarative Shadow DOM ([255020@main](https://commits.webkit.org/255020@main))

### Safari Extensions

- Fixed an issue where `browser.tabs` sometimes returned an incorrect URL for pinned tabs.

### Bug Fixes

- Fixed the Share Menu when sharing an image to show a preview of the image and a title ([254976@main](https://commits.webkit.org/254976@main))

---

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)