Features implemented only in Safari
The following features are only implemented in Safari.
-
Audio session
Limited availabilityThe
navigator.audioSessionAPI controls how audio playback interacts with other applications. For example, playing music can pause audio from other applications, while ambient audio can play at the same time.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Audio and video tracks
Limited availabilityThe
audioTracksandvideoTracksAPIs for media elements switch audio and video tracks during playback.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
background-clip: border-area
Limited availabilityThe
background-clip: border-areaCSS declaration draws the background underneath only the border of an element.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 18.2 Released on 2024-12-11
- Safari on iOS 18.2 Released on 2024-12-11
-
cross-fade()
Limited availabilityThe
cross-fade()CSS function generates an image by mixing two images. -
The DOM level 2 style specification defined interfaces to access and modify CSS styles, such as
CSSValueandCSSPrimitiveValue, that were later excluded from the CSS object model.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
filter()
Limited availabilityThe
filter()CSS function applies one or more graphic effects to a CSS image, such as a background image. You can use functions, such asblur()anddrop-shadow(), alone or combined to produce different effects. For instance,background: filter(url(image.png), blur(2px)).- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 9.1 Released on 2016-03-21
- Safari on iOS 9.3 Released on 2016-03-21
-
UI fonts
Limited availabilityThe
ui-serif,ui-sans-serif,ui-monospaceandui-roundedvalues for thefont-familyCSS property use device-default user interface fonts for text.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 13.1 Released on 2020-03-24
- Safari on iOS 13.4 Released on 2020-03-24
-
font-width
Limited availabilityThe
font-widthCSS property selects a font face from a font family based on width, either by a keyword such ascondensedor a percentage.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 18.4 Released on 2025-03-31
- Safari on iOS Not supported
-
The
glyph-orientation-verticalCSS property sets the orientation of glyphs in text rendered in a vertical writing mode.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 4 Released on 2009-06-08
- Safari on iOS 3.2 Released on 2010-04-03
-
Hanging punctuation
Limited availabilityThe
hanging-punctuationCSS property puts punctuation characters outside of the box to align the text with the rest of the document.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 26.5 Released on 2026-05-11
- Safari on iOS 26.5 Released on 2026-05-11
-
alpha and colorspace attributes for <input type=color>
Limited availabilityThe ability to control the opacity of a color picked using
<input type="color">and determine the colorspace of the selected color. -
Insertable streams for MediaStreamTrack
Limited availabilityThe
MediaStreamTrackProcessorandMediaStreamTrackGeneratorAPIs modify the contents of a media track for merging streams, applying real-time effects like funny hats, and content overlays.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 18 Released on 2024-09-16
- Safari on iOS 18 Released on 2024-09-16
-
inverted-colors media query
Limited availabilityThe
inverted-colorsCSS media query sets styles based on whether the user has inverted all colors, such as with mobile accessibility settings. -
JPEG XL
Limited availabilityThe JPEG XL image format is a raster graphics file format that supports animation, alpha transparency, and lossy as well as lossless compression.
-
Managed media source
Limited availabilityThe
ManagedMediaSourceAPI is aMediaSourcewhere the browser manages the memory of source buffers and may evict data if needed. -
margin-trim
Limited availabilityThe
margin-trimCSS property removes the margins of child elements when they meet the edges of the container. -
mask-border
Limited availabilityThe
mask-borderCSS property sets how the edges of an element are masked. It is a shorthand formask-border-outset,mask-border-repeat,mask-border-slice,mask-border-source, andmask-border-width.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
The playback of multiple
<video>or<audio>elements can be coordinated by aMediaControllerinstance, for example to synchronize a sign-language interpreter track with the main video track.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 7 Released on 2013-10-22
- Safari on iOS 7 Released on 2013-09-18
-
Private click measurement
Limited availabilityThe
attributionsourceidandattributiondestinationattributes for<a>elements measure clicks across websites without associating a click to a specific session. Not to be confused with attribution reporting. Also known as PCM. -
random()
Limited availabilityThe
random()CSS function chooses a random numeric value within a specified range. This allows for dynamic, randomized styling using CSS.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 26.2 Released on 2025-12-12
- Safari on iOS 26.2 Released on 2025-12-12
-
ruby-overhang
Limited availabilityThe
ruby-overhangCSS property sets whether ruby annotations may overlap adjacent text.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 18.2 Released on 2024-12-11
- Safari on iOS 18.2 Released on 2024-12-11
-
speak-as
Limited availabilityThe
speak-asCSS property sets how any element's content is spoken. Not to be confused with thespeak-asdescriptor of@counter-styleat-rules.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 11.1 Released on 2018-04-12
- Safari on iOS 11.3 Released on 2018-03-29
-
The SVG 1.1 image format has several components that were excluded from SVG 2, such as fonts, alternate glyphs, and the
xlinknamespace.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari ≤13.1 Released before 2020-03-24
- Safari on iOS ≤13.4 Released before 2020-03-24
-
cross-origin() for url()
Limited availabilityThe
url()CSS function accepts across-origin()modifier to control cross-origin resource sharing (CORS) when requesting the URL. For example,url("https://example.com" cross-origin(anonymous))) does not send credentials to the URL.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 26.2 Released on 2025-12-12
- Safari on iOS 26.2 Released on 2025-12-12
-
referrer-policy() for url()
Limited availabilityThe
url()CSS function accepts areferrer-policy()modifier to choose which referrer to send when requesting the URL. For example, `url("https://example.com" referrer-policy(no-referrer)) does not send a referrer to the URL.- Chrome Not supported
- Chrome Android Not supported
- Edge Not supported
- Firefox Not supported
- Firefox for Android Not supported
- Safari 26.2 Released on 2025-12-12
- Safari on iOS 26.2 Released on 2025-12-12