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

# Safari Technology Preview 133 Release Notes

Preview the latest web technology updates including: CSS, CSS Cascade Layers, CSS Font Loading API, Accessibility, JavaScript, Web API , WebRTC, Media, and Web and App Extensions.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 133 is now [available for download](https://webkit.org/downloads/) for macOS Big Sur and betas of macOS Monterey. If you already have Safari Technology Preview installed, you can update in the Software Update pane of System Preferences on macOS.

This release covers WebKit revisions [281797-282317](https://trac.webkit.org/log?stop_rev=281797&rev=282317&limit=999). **Note**: The changes for these release notes were updated after publishing to account for an incorrect end revision number.

**Note:** Tab Groups do not sync in this release.

### CSS

- Added support for `self-start`,  `self-end`, `start`, `end`, `left`, and `right` values in positional alignment ([r282267](https://trac.webkit.org/changeset/282267/webkit/), [r282078](https://trac.webkit.org/changeset/282078/webkit/), [r281840](https://trac.webkit.org/changeset/281840/webkit/))
- Added support for percentages in the `scale()` transform functions, and the `scale` property ([r282144](https://trac.webkit.org/changeset/282144/webkit/))
- Added support for `sin()`, `cos()`, `tan()`, `e`, and `pi` in `calc()` ([r282162](https://trac.webkit.org/changeset/282162/webkit/))
- Fixed incorrect stacking order with an absolutely positioned and negative `z-index` `<div>` with a canvas child ([r281913](https://trac.webkit.org/changeset/281913/webkit/))
- Fixed absolute positioning with orthogonal writing modes ([r281995](https://trac.webkit.org/changeset/281995/webkit/))
- Fixed right-relative and bottom-relative values in `background-position-x` and `background-position-y` ([r282234](https://trac.webkit.org/changeset/282234/webkit/))
- Fixed incorrect vertical position in table layout when the inline level box has `0px` height ([r282256](https://trac.webkit.org/changeset/282256/webkit/))
- Fixed changing the border size on rows with `border-collapse` not redrawing ([r282266](https://trac.webkit.org/changeset/282266/webkit/))
- Fixed `position: sticky` used within table cells ([r282201](https://trac.webkit.org/changeset/282201/webkit/))
- Fixed incorrectly calculated `position: sticky` constraints when the scrolling container has padding and borders ([r282138](https://trac.webkit.org/changeset/282138/webkit/))
- Fixed an interoperability issue in margin collapsing with `overflow: hidden` elements ([r282085](https://trac.webkit.org/changeset/282085/webkit/))

### CSS Cascade Layers

- Added initial support for CSS Cascade Layers in Experimental Features:
  - Added support for computing the order correctly for late added sublayers ([r281798](https://trac.webkit.org/changeset/281798/webkit/))
  - Supported layer argument in `@import` rules ([r281928](https://trac.webkit.org/changeset/281928/webkit/))

### CSS Font Loading API

- Updated the implementation of the CSS Font Loading API to be closer to the spec and other browsers:
  - Fixed `CSSFontFaceSet.clear()` to not clear CSS-connected members ([r281842](https://trac.webkit.org/changeset/281842/webkit/))
  - Updated FontFaceSet methods that need to react to style changes ([r282016](https://trac.webkit.org/changeset/282016/webkit/), [r282015](https://trac.webkit.org/changeset/282015/webkit/), [r282015](https://trac.webkit.org/changeset/282015/webkit/), [r282261](https://trac.webkit.org/changeset/282261/webkit/), [r282204](https://trac.webkit.org/changeset/282204/webkit/))
  - Updated `FontFaceSet.add()` to throw when called on a CSS-connected font ([r281951](https://trac.webkit.org/changeset/281951/webkit/))

### Accessibility

- Fixed blank braille display in `contenteditable` elements when the field is followed by another element ([r281920](https://trac.webkit.org/changeset/281920/webkit/))
- Made PDFs loaded via `<embed>` accessible ([r282358](https://trac.webkit.org/changeset/282358/webkit/))

### JavaScript

- Enabled `Object.hasOwn` ([r281835](https://trac.webkit.org/changeset/281835/webkit/))
- Implemented `Temporal.PlainTime` behind the flag `--useTemporal=1` ([r282125](https://trac.webkit.org/changeset/282125/webkit/))
- Implemented `Temporal.TimeZone` behind the flag `--useTemporal=1` ([r282018](https://trac.webkit.org/changeset/282018/webkit/))
- Implemented `Temporal.Duration` behind the flag `--useTemporal=1` ([r281838](https://trac.webkit.org/changeset/281838/webkit/))
- Implemented `self.structuredClone()` ([r281808](https://trac.webkit.org/changeset/281808/webkit/))
- Implemented `Object.hasOwn()` ([r281799](https://trac.webkit.org/changeset/281799/webkit/))
- Updated `Intl.Locale` `weekendInfo` to list all weekend days instead of range to follow to the latest spec change ([r282257](https://trac.webkit.org/changeset/282257/webkit/))

### Web API

- Added basic support for Storage API ([r282130](https://trac.webkit.org/changeset/282130/webkit/))
- Added support for `ServiceWorkerGlobalScope.serviceWorker` ([r281854](https://trac.webkit.org/changeset/281854/webkit/))
- Added handling for non-fully active documents in `navigator.share() / navigator.canShare()` ([r282282](https://trac.webkit.org/changeset/282282/webkit/))
- Enabled Cross-Origin-Opener-Policy / Cross-Origin-EmbedderPolicy headers support ([r282105](https://trac.webkit.org/changeset/282105/webkit/), [r282246](https://trac.webkit.org/changeset/282246/webkit/))
- Enabled SharedArrayBuffer support when COOP/COEP headers are used ([r281832](https://trac.webkit.org/changeset/281832/webkit/))
- Fixed scrollbars on `pointer-events: none` element still intercepting events ([r281991](https://trac.webkit.org/changeset/281991/webkit/))
- Implemented top-origin and frame-origin partitioning for BroadcastChannel ([r282105](https://trac.webkit.org/changeset/282105/webkit/))
- Implemented navigation reporting for Cross-Origin-Opener-Policy ([r282305](https://trac.webkit.org/changeset/282305/webkit/))
- Implemented `getClientRects()` for SVG elements ([r282316](https://trac.webkit.org/changeset/282316/webkit/))
- Updated to always fetch the first manifest if provided ([r282026](https://trac.webkit.org/changeset/282026/webkit/))

### WebRTC

- Added support for RTCError and RTCErrorEvent ([r282199](https://trac.webkit.org/changeset/282199/webkit/))
- Added support for RTCDataChannel closing event ([r282198](https://trac.webkit.org/changeset/282198/webkit/))
- Added support for RTCSctpTransport ([r282197](https://trac.webkit.org/changeset/282197/webkit/))
- Updated timing of RTCPeerConnection descriptions update to align with the WebRTC spec ([r282217](https://trac.webkit.org/changeset/282217/webkit/))
- Updated signaling state check when applying a local or remote description to align with the WebRTC spec ([r281985](https://trac.webkit.org/changeset/281985/webkit/))
- Updated `getDisplayMedia` to capture at the constrained size if possible ([r281880](https://trac.webkit.org/changeset/281880/webkit/))

### Media

- Fixed an incorrect number of frames returned if the decoding frame rate doesn’t match the original in WebM ([r282196](https://trac.webkit.org/changeset/282196/webkit/))
- Removed Web Audio `canPlayType()` workaround that made it reports false negatives ([r282137](https://trac.webkit.org/changeset/282137/webkit/))

### Web and App Extensions

- Added the extension’s icon to extension URL tabs for both app and web extensions
- Added the extension name as the title of tabs when an app extension page and does not specify a title

---

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)