Safari Technology Preview Release 188 is now available for download for macOS Sonoma and macOS Ventura. 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: 272449@main…273601@main.
Accessibility
New Features
- Added support for the new CSS
content
alternative text syntax. (272455@main) (26942023)
Resolved Issues
- Fixed role assignment for
<header>
inside <main>
and sectioning elements. (273188@main) (48370244)
- Fixed text missing from accessibility labels for many common shadow DOM scenarios. (272531@main) (120223342)
- Fixed the mapping for the iOS accessibility framework to speak “switch button”, “on”, and “off” for
<input type=checkbox switch>
. (273206@main) (121215059)
- Fixed comboboxes to expose their linked objects correctly. (273542@main) (121242926)
Animations
Resolved Issues
- Fixed the
transition
property to produce the shortest serialization. (272513@main) (119822401)
- Fixed the
animation
property to produce the shortest serialization. (272629@main) (120439368)
Browser Changes
Resolved Issues
- Fixed loading a ⌘Click fragment link in a background tab. (272906@main) (119079650)
- Fixed saving linked subresources when saving web page resources. (272925@main) (120491493)
CSS
New Features
- Added
supports()
syntax for @import
rules. (273591@main) (109060734)
Resolved Issues
- Fixed
getComputedStyle()
for invalid pseudo-elements. (272543@main) (98504661)
- Fixed
oklab
and oklch
lightness value clamping. (272501@main) (116195533)
- Fixed poor performance with
:has(+ :not(.class))
pseudo-class selector. (272678@main) (119819247)
- Fixed CSS
content
computed value serialization. (272476@main) (120061551)
- Fixed pseudo-element parsing in
getComputedStyle()
and KeyframeEffect.prototype.pseudoElement
so they require them starting with ::
(or :
for 4 legacy pseudo-elements). (272499@main) (120170550)
- Fixed CSS
linear()
easing. (272613@main) (120290721)
- Fixed: Aliased
:-webkit-full-screen
pseudo-class to :fullscreen
. (272577@main) (120335917)
- Fixed: Aliased
:-webkit-any-link
to :any-link
and :matches()
to :is()
. (272559@main) (120337922)
- Fixed
getComputedStyle()
pseudo-element parsing to support the full range of CSS syntax. (272649@main) (120471227)
- Fixed
:not(:has(:not(foo)))
getting misclassified as scope breaking. (273177@main) (120492012)
- Fixed
@supports
to correctly handle support for some -webkit
prefixed pseudo-elements that were incorrectly treated as unsupported. (272726@main) (120577690)
- Fixed updating media-query sensitive meta tags after style changes. (272947@main) (120854167)
Deprecations
- Removed
-webkit-alt
and alt
properties. (272480@main) (120051066)
- Removed the non-standard
resize: auto
property. (273035@main) (120138995)
- Made
-apple-
prefixed pseudo-elements no longer valid. (272538@main) (120268884)
- Removed
:-webkit-animating-full-screen-transition
pseudo-class. (273529@main) (121302758)
- Removed
:-khtml-drag
pseudo-class. (273261@main) (121303391)
Forms
Resolved Issues
- Fixed
text-indent
to affect the selected file(s) label for file inputs. (272837@main) (105223868)
Loading
Resolved Issues
- Fixed
navigator.cookieEnabled
to return false
when cookies are blocked. (273522@main) (121284878)
Lockdown Mode
Resolved Issues
- Fixed Lockdown Mode disabling on sites with COOP and COEP HTTP headers. (273243@main) (119503109)
Media
Resolved Issues
- Fixed HLS video captions where there are multiple text tracks available. (272784@main) (119839950)
- Fixed fullscreen video not scaling to display size when the Safari window is in Full Screen App Mode. (272733@main) (119893556)
- Fixed handling key renewal requests that cause playback errors for some DRM content. (272592@main) (120230860)
- Fixed paint-on captions shifting during playback. (272966@main) (120847946)
- Fixed blocked encrypted sampled not getting enqueued after a CDM is attached to a SourceBuffer. (273340@main) (120879185)
Rendering
Resolved Issues
- Fixed resizing a
<textarea>
element with 1rem
padding. (273029@main) (90639221)
- Fixed incorrectly oriented Traditional Mongolian script characters. (272454@main) (93426525)
- Fixed handling images with color spaces not supported by the backend to fallback to render in sRGB. (273204@main) (118238178)
- Fixed check boxes and radio buttons to avoid floats. (273047@main) (118660695)
- Fixed rendering issues when editing text. (273320@main) (119833765)
- Fixed a floating element causing a list item bullet to be orphaned on constrained lines. (272451@main) (120022893)
- Fixed fully repainting form controls with visual overflow and
writing-mode: vertical-rl
. (272799@main) (120066970)
- Fixed incorrect inline box (hugging) outline painting in vertical writing modes. (272512@main) (120217559)
- Fixed incorrect
ch
unit value in vertical-rl
and vertical-lr
when text-orientation
is not upright. (272536@main) (120293590)
- Fixed the color correctness of the color matrix filter. (272891@main) (120795573)
- Fixed
overflow: hidden
preventing CSS Subgrid. (273134@main) (120848131)
- Fixed the repaint area for underline text decorations. (273126@main) (121082290)
- Fixed rendering floats and an out-of-flow
<br>
element with clear
. (273407@main) (121444267)
Scrolling
Resolved Issues
- Fixed unusable horizontal scrollbars with a right-to-left element. (272466@main) (109858866)
- Fixed wheel overflow behavior with Shadow DOM elements. (273181@main) (118496293)
- Fixed keyboard scrolling beyond the page getting stuck at a bad scroll offset. (272957@main) (120053910)
- Fixed a variety of issues by disabling Scroll Anchoring. (273238@main) (121236706)
Storage
Resolved Issues
- Fixed cases where website data is unexpectedly evicted. (272951@main) (119818267)
Deprecations
- Removed support for AppCache. (273297@main) (113343269)
SVG
Resolved Issues
- Fixed negative SVGTransform scale values to be correctly stringified. (272885@main) (118656892)
- Fixed the layout of an SVG when it is inside an
<iframe>
without affecting the size of the <iframe>
. (272503@main) (120178866)
- Fixed displaying an SVG element inside a
<switch>
element. (272831@main) (120732837)
Web API
New Features
- Added support for CustomStateSet in custom elements and
:state()
pseudo-class. (272474@main) (120072599)
Resolved Issues
- Fixed: Added support for AES-GCM in WebCrypto. (273488@main) (101040216)
- Fixed removing highlights in the Custom Highlights API. (272723@main) (119531671)
- Fixed unnecessarily unsetting the iframe fullscreen flag. (272462@main) (120052751)
- Fixed
getElementsByName()
to only return HTML elements, not SVG, MathML, or other types of elements. (272530@main) (120275680)
- Fixed the
button
value for a pointerup
event not matching the pointerdown
event. (273263@main) (120429508)
- Fixed a wheel event to fire on an element that has been re-inserted after
document.open
. (272960@main) (120893136)
- Fixed Scroll To Text Fragment Text Directives to find text with additional unrendered white space in their node data. (273016@main) (120913588)
- Fixed Media Capture API to capture the camera. (273258@main) (121256297)
Deprecations
- Removed support for
KeyboardEvent.altGraphKey
. (273379@main) (102980723)
- Removed AES-CFB support from WebCrypto. (272615@main) (120000331)
- Removed the non-standard
KeyboardEvent.keyLocation
. (273457@main) (121564228)
Web Extensions
Resolved Issues
- Fixed
browsing.scripting.executeScript
to handle all valid argument types. (120727491)
WebAuthn
Resolved Issues
- Fixed
getClientCapabilities
to align with WebAuthn standards to use a record type with camelCase values. (272998@main) (120442670)
WebGL
New Features
- Enabled support for
EXT_conservative_depth
and NV_shader_noperspective_interpolation
. (272979@main) (120907578)
Resolved Issues
- Fixed WebGL to be available in nested workers. (272765@main) (120279728)
WebRTC
Resolved Issues
- Fixed triggering resolution scaling in the case of WebRTC maintain-framerate
degradationPreference
. (273172@main) (121041723)