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 99.60% of all users on
Chrome, Chrome Android, Edge, Firefox, Firefox Android, Safari, iOS browsers, Samsung Internett Android, Opera, Opera Android, and Webview Android.
Minimum requirements
| Browser version | Release date |
|---|---|
| Chrome 54+ | 12.10.2016 |
| Edge 79+ | 15.01.2020 |
| Firefox 63+ | 23.10.2018 |
| Safari 10.1+ | 27.03.2017 |
| iOS browsers 10.3+ | 27.03.2017 |
| Opera 41+ | 24.10.2016 |
Web features in use
| Feature | Browser support |
|---|---|
| customElements | 99.60% |
| attachShadow | 99.60% |
| getRootNode | 99.60% |
| composed | 99.60% |
| :host | 99.60% |
| isConnected | 99.70% |
| ::slotted() | 99.70% |
| includes | 99.80% |
| Array.from | 99.80% |
| Array.prototype.includes | 99.80% |
| closest | 99.90% |
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:
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.