Skip to content

Browser support

u-elements is committed to provide great support for all users and technologies, including older browser versions.

Based on up-to-date statistics from caniuse.com, u-elements currently support 96.86% of all users on Chrome, Edge, Firefox, Firefox for Android, Opera, Safari, Safari on iOS, and Samsung Internet.

Minimum requirements

Browser versionRelease date
Chrome 77+September 2019
Edge 79+January 2020
Firefox 93+October 2021
Firefox for Android 150+April 2026
Opera 64+October 2019
Safari 16.4+March 2023
Safari on iOS 16.4+March 2023
Samsung Internet 12+June 2020

Web features in use

u-elements tracks browser support by monitoring the web features it uses. This is done by analyzing source code with JSHint and cross-referencing the identified features against MDN Browser Compatibility Data and caniuse.com usage statistics. Here are the web features used by u-elements that are not yet fully supported by all browsers:

FeatureBrowser support
HTMLElement.attachInternals 96.86%
Array.values 98.86%
Node.getRootNode 99.34%
Window.customElements 99.34%
:host 99.34%
:host() 99.34%
Element.append 99.36%
Object.entries 99.36%
Element.prepend 99.36%
Object.values 99.36%
Element.attachShadow 99.41%
ShadowRoot.mode 99.41%
ShadowRoot.activeElement 99.41%
ShadowRoot.innerHTML 99.41%
Element.slot 99.41%
ShadowRoot.host 99.41%
Event.composed 99.43%
Node.isConnected 99.57%
KeyboardEvent.key 99.57%
Array.includes 99.87%

Content Security Policy (CSP)

u-elements uses constructable stylesheets to inject styles. If the browser does not support constructable stylesheets (iOS 16.3 and older), u-elements will fall back to instead inject an inline <style> element. Be aware that if you enforce a strict Content Security Policy that blocks the style-src-elem directive, these inline <style> elements will be blocked as well and thus cause styling issues for users on iOS 16.3 and older.

Released under the MIT License