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

# Safari Technology Preview 135 Release Notes

Preview the latest web technology updates including: Web Inspector and Web Driver, CSS, Web API, Scrolling, Rendering, WebAuthn, Media, WebRTC, WebGL, App Extensions, and Web Extensions.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 135 is now [available for download](https://webkit.org/downloads/) for macOS Big Sur and 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 [284370-285101](https://trac.webkit.org/log?stop_rev=284370&rev=285101&limit=731).

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

### Web Inspector and Web Driver

- Fixed “testForLinkLabels” Accessibility audit to ignore anchors if `aria-hidden` ([r284986](https://trac.webkit.org/changeset/284986/webkit/))
- Added support for the `acceptInsecureCerts` capability ([r285164](https://trac.webkit.org/changeset/285164/webkit))

### CSS

- Media queries affect Cascade Layer order ([r284859](https://trac.webkit.org/changeset/284859/webkit/))
- Enabled `accent-color` by default ([r284634](https://trac.webkit.org/changeset/284634/webkit/))
- Added support for small `svw`/`svh`/`svmin`/`svmax`, large `lvw`/`lvh`/`lvmin`/`lvmax`, and dynamic `dvw`/`dvh`/`dvmin`/`dvmax` viewport units ([r284628](https://trac.webkit.org/changeset/284628/webkit/))
- Added `flex-basis: content` support ([r284440](https://trac.webkit.org/changeset/284440/webkit/))
- Added support for `contain: style` for counters ([r284642](https://trac.webkit.org/changeset/284642/webkit/), [r284755](https://trac.webkit.org/changeset/284755/webkit/))
- Added support for `::before` and `::after` pseudo elements after `::slotted` ([r284973](https://trac.webkit.org/changeset/284973/webkit/))
- Added support for more CSS properties for `::marker` ([r284519](https://trac.webkit.org/changeset/284519/webkit/))
- Allowed `:is` and `:where` after all pseudo elements ([r285054](https://trac.webkit.org/changeset/285054/webkit/))
- Made `:-webkit-any()` a synonym of `:is()` ([r285032](https://trac.webkit.org/changeset/285032/webkit/))
- Fixed `::part(foo):hover` ([r284865](https://trac.webkit.org/changeset/284865/webkit/))
- Serialized `:part()` argument as identifier ([r284863](https://trac.webkit.org/changeset/284863/webkit/))
- Fixed `:host` invalidation when combined with pseudo classes in descendant position ([r285100](https://trac.webkit.org/changeset/285100/webkit/))
- Prevented clamping flex base size with `min-height`, `max-height`, `min-width`, and `max-width` ([r284397](https://trac.webkit.org/changeset/284397/webkit/))
- Fixed sizing of orthogonal elements with percentage margins ([r284773](https://trac.webkit.org/changeset/284773/webkit/))
- Fixed `-webkit-background-clip: text` to paint correctly for inline box spanning multiple lines ([r284380](https://trac.webkit.org/changeset/284380/webkit/))
- Fixed `box-shadow` and `text-shadow` to yield float values while interpolating ([r284437](https://trac.webkit.org/changeset/284437/webkit/))
- Fixed CSS serialization affecting `grid-auto-flow` ([r284876](https://trac.webkit.org/changeset/284876/webkit/))
- Fixed percentages on orthogonal replaced children ([r284548](https://trac.webkit.org/changeset/284548/webkit/))
- Fixed the `border-radius` value from `.style` to be readable when it includes a `var()` ([r285015](https://trac.webkit.org/changeset/285015/webkit/))
- Fixed opacity to flatten when combined with `transform-style: preserve-3d` ([r285021](https://trac.webkit.org/changeset/285021/webkit/))

### Web API

- Enabled lazy image loading by default ([r284995](https://trac.webkit.org/changeset/284995/webkit/))
- Added support for `rel="noopener/noreferrer"` on `<form>` elements ([r284749](https://trac.webkit.org/changeset/284749/webkit/))
- Exposed MediaCapabilities to Workers ([r284443](https://trac.webkit.org/changeset/284443/webkit/))
- Fixed `anchor.relList.supports("opener")` to return `true` ([r284745](https://trac.webkit.org/changeset/284745/webkit/))
- Fixed changing the `src` attribute of the `<img>` element inside an ImageDocument to trigger a load ([r284901](https://trac.webkit.org/changeset/284901/webkit/))
- Fixed `document.open()` and friends to use the correct document as a source for reset document’s URL ([r284758](https://trac.webkit.org/changeset/284758/webkit/))
- Fixed form navigations with `target="_blank"` to not have an opener ([r284821](https://trac.webkit.org/changeset/284821/webkit/))
- Fixed form submission to be cancelled if the form gets detached from inside the formdata event handler ([r284660](https://trac.webkit.org/changeset/284660/webkit/))
- Fixed JavaScript URL result to be treated as UTF-8 bytes ([r284934](https://trac.webkit.org/changeset/284934/webkit/))
- Fixed Origin of opaque `blob:` URLs to be null instead of an empty string ([r284478](https://trac.webkit.org/changeset/284478/webkit/))
- Fixed selection `extend()` with no ranges to trigger an exception ([r285084](https://trac.webkit.org/changeset/285084/webkit/))
- Fixed the intrinsic size of a picture image inside a template ([r284667](https://trac.webkit.org/changeset/284667/webkit/))
- Updated appearance of `<datalist>` indicator ([r284626](https://trac.webkit.org/changeset/284626/webkit/))

### Scrolling

- Fixed misplaced `position: fixed` content with async-scrollable iframes when switching tabs ([r284738](https://trac.webkit.org/changeset/284738/webkit/))

### Rendering

- Ensured `CanvasRenderingContext2D.drawImage(video)` uses the right color space ([r284439](https://trac.webkit.org/changeset/284439/webkit/))

### WebAuthn

- Changed to obtain consent to create a new credential when the platform authenticator is in `excludedCredentials.` This improves compliance with the WebAuthn spec (Step 3.1 of makeCredential). ([r284413](https://trac.webkit.org/changeset/284413/webkit/))

### Media

- Added support for requestVideoFrameCallback API for MediaStreamTrack-based backends ([r284528](https://trac.webkit.org/changeset/284528/webkit/))
- Fixed video appearing blank with only audio playing if video element isn’t appended to the DOM tree ([r284741](https://trac.webkit.org/changeset/284741/webkit/))
- Updated WebM with invalid size to fail to load with error ([r284434](https://trac.webkit.org/changeset/284434/webkit/))

### WebRTC

- Decreased WebRTC latency by pulling data more often ([r284860](https://trac.webkit.org/changeset/284860/webkit/))
- Changed to fallback to SW decoder in case of VP9-SVC ([r284523](https://trac.webkit.org/changeset/284523/webkit/))
- Changed to always set the color space for incoming H.264/265 streams ([r284433](https://trac.webkit.org/changeset/284433/webkit/))
- Ensured synchronized rendering of incoming audio tracks ([r285027](https://trac.webkit.org/changeset/285027/webkit/))
- Fixed latent audio over peer connections when changing the output ([r284674](https://trac.webkit.org/changeset/284674/webkit/))

### WebGL

- Fixed an issue where high-performance WebGL wasn’t getting the correct GPU ([r284669](https://trac.webkit.org/changeset/284669/webkit/))

### App Extensions

- Fixed an issue where App Extension toolbar items would not remember their position or stay removed from the toolbar

### Web Extensions

- Fixed an issue where `browser.storage.sync` entries were saved into the `browser.storage.local` storage area. If unable to locate sync storage entries, check in the local storage area and do a one-time migration to the sync storage area

---

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)