Safari 15.4 Release Notes
Released March 14, 2022 — Version 15.4 (17613.1.17)
Overview
Safari 15.4 ships with the iOS and iPadOS 15.4 and macOS 12.3.
General
Known Issues
Safari 15.4 in macOS Catalina running on an iMac (Late 2012 or 2013) with a NVIDIA GPU may experience multiple sites that fail to load or continuously refresh after loading. (88177392)
CSS
New Features
Added
::backdroppseudo-element support.Added support for CSS Containment with the
containproperty.Added CSS Cascade Layer support for improved developer control over cascading rules.
Added
accent-colorsupport to alter the accent color of form controls<input type="checkbox">,<input type="radio">,<progress>,<select>; text-input types with a<datalist>in macOS, iPadOS, and iOS; and<input type="range">,<button>, and<input type="button">in iPadOS and iOS.Added
:has()pseudo-class support to match an element with an element that matches a given selector.Added support for
text-decoration-skip-inkto control how underlines and overlines are rendered.Added support for small (
svw,svh,svi,svb,svmin,svmax), large (lvw,lvh,lvi,lvb,lvmin,lvmax), dynamic (dvw,dvh,dvi,dvb,dvmin,dvmax), and logical (vi,vb) viewport units.Added support for the
:focus-visiblepseudo-class to style the focus indicator only when rendered by the browser.Added support for the
font-paletteproperty and the@font-palette-valuesrule to support recoloring color fonts.Implemented the
icunit, equivalent to inline direction length (width or height) of the “水” glyph in the element’s current font.Implemented
calc()math functions includingsin,cos,tan,e,pi,exp,log,atan,acos,asin, andatan2.Added the
appearanceproperty, includingappearance: auto, and aliased-webkit-appearanceto the unprefixed property.Added the
maskproperty, along with the long-hand formsmask-image,mask-size,mask-repeat-x,mask-repeat-y,mask-origin, and aliased-webkit-mask.Added the
backface-visibilityproperty and aliased-webkit-backface-visibilityto the unprefixed property.Added the
text-combine-uprightproperty and aliased-webkit-text-combineto the unprefixed property.Added the
print-color-adjustproperty and aliased-webkit-print-color-adjustto the unprefixed property.Added the
match-parentCSS value and aliased-webkit-match-parentfor thetext-alignCSS property.
Resolved Issues
Fixed the drawing area to be painted when the computed
border-widthis 0 and theborder-image-widthis set or defaults to a number.Fixed
remin media queries to calculate usingfont-size: initial, not the root elementfont-size.Fixed
background-attachment: local.Fixed gradient color interpolation for colors with alpha transparency.
Removed Features
Removed non-standard CSS properties
-webkit-border-fit,-webkit-margin-collapse,-webkit-margin-top-collapse,-webkit-margin-bottom-collapse,-webkit-margin-before-collapse,-webkit-margin-after-collapse, and-webkit-background-composite.
HTML
New Features
Added support for the
<dialog>element.Added lazy-loading support for images with the
loadingattribute on the<img>element.Added support for the
autofocusattribute.
Web API
New Features
Added support for Web App Manifest icons, shown when no
apple-touch-iconis provided and when either"purpose": "any"is present or the"purpose"key isn’t present at all.Improved Web App Manifest to always attempt to fetch the manifest file.
Enabled BroadcastChannel for communication between different windows, tabs, frames, or iframes.
Added support for ServiceWorker downloads.
Added support for ServiceWorker Navigation Preload.
Added support for the CSS
scroll-behaviorproperty andScrollOptions, allowing smooth scrolling to anchors or via JavaScript.Added support for the
ResizeObserverEntryandResizeObserverSizeinterfaces.Added support for the Web Locks API.
Added support for recurring payments with the Payment Request API.
Added support for controlling the initially selected shipping method in the Payment Request API.
Resolved Issues
Fixed Fetch using
FormDatawith a file not going through ServiceWorker.
Removed Features
Removed the XSS Auditor.
JavaScript
New Features
Added
Object.hasOwn().Added
self.structuredClone().Added
Array.prototype.findLastandArray.prototype.findLastIndex.Added
Array.prototype.at,String.prototype.at, andTypedArray.prototype.at.Added
Intl.NumberFormat.prototype.formatRangeandIntl.NumberFormat.prototype.formatRangeToParts.Added
Intl.PluralRules.prototype.selectRange.Added the
Intlenumeration.Added the
Intl.Localeinfo extension.Updated
Intl.DisplayNamesto V2.Updated
Intl.NumberFormatto V3, supporting new options.Supported the
TimeZoneNameoption inIntl.DateTimeFormat.
Media
New Features
Added support for WebRTC perfect negotiation.
Added in-band chapter tracks support.
Private Click Measurement
New Features
Enabled unlinkable tokens for triggering events on a merchant website.
Added support for same-site conversion pixels on merchant websites, to enable removal of cross-site tracking pixels.
Allowed measurement of links in nested, cross-site iframes on publisher websites.
Safari Web Extensions
New Features
Added support for
manifest_version3 and related API changes.Added support for
service_workerbackground scripts as an alternative to nonpersistent background pages.Added support for script and style injection via the
browser.scriptingAPIs.Added support for dynamic and session rules via the
browser.declarativeNetRequestAPIs.Added support for webpage-to-extension messaging using
externally_connectable:matches.
Resolved Issues
Fixed: Limits are now enforced on the size and number of items in extension sync storage.
Fixed: More directives are now allowed to be included in the
content_security_policyof an extension’s manifest, such as thesandboxdirective.Fixed: Special matching characters (
*,|,||, and^) inurlFilterofdeclarativeNetRequestrules are now handled, instead of being treated as regex patterns.Fixed:
Promisereturns fromruntime.onMessagelisteners are now allowed for the message reply.
Security
New Features
Improved support for Content Security Policy 3:
Added correct blocked resource violation reporting for inline script, inline style, and eval execution.
Added support for the
'strict-dynamic'source expression.Added support for the
'unsafe-hashes'source expression.Added support to allow external JavaScript matching hash source expressions.
Added support for the
'report-sample'expression.
Web Inspector
New Features
Added CSS alignment controls in the Styles panel.
Added support for showing the related
@layerfor CSS rulesets in the Styles panel.Improved CSS auto-completion in the Styles panel with fuzzy matching.
Added CSS variables grouping by type in the Computed panel.