Index

CSS

  1. ::first-letter CSS pseudo-element selector
  2. ::placeholder CSS pseudo-element
  3. ::selection CSS pseudo-element
  4. @font-face Web fonts
  5. Blending of HTML/SVG elements
  6. calc() as CSS unit value
  7. 2.1 selectors
  8. all property
  9. Animation
  10. Appearance
  11. background-attachment
  12. background-blend-mode
  13. background-position edge offsets
  14. box-decoration-break
  15. clip-path property
  16. Counter Styles
  17. Counters
  18. currentColor value
  19. Device Adaptation
  20. element() function
  21. Exclusions Level 1
  22. Feature Queries
  23. Filter Effects
  24. filter() function
  25. font-feature-settings
  26. font-size-adjust
  27. font-stretch
  28. font-variant-alternates
  29. Generated content for pseudo-elements
  30. Gradients
  31. Grid Layout
  32. Hyphenation
  33. initial value
  34. inline-block
  35. Masks
  36. min/max-width/height
  37. outline
  38. page-break properties
  39. position:fixed
  40. Regions
  41. Repeating Gradients
  42. resize property
  43. Scroll snap points
  44. Shapes Level 1
  45. Table display
  46. touch-action property
  47. unset value
  48. user-select: none
  49. Variables
  50. will-change property
  51. writing-mode property
  52. 2D Transforms
  53. 3D Transforms
  54. Background-image options
  55. Border images
  56. Border-radius (rounded corners)
  57. Box-shadow
  58. Box-sizing
  59. Colors
  60. Cursors (original values)
  61. Cursors: zoom-in & zoom-out
  62. font-kerning
  63. image-orientation
  64. Media Queries
  65. Multiple backgrounds
  66. Multiple column layout
  67. object-fit/object-position
  68. Opacity
  69. Overflow-wrap
  70. selectors
  71. tab-size
  72. text-align-last
  73. Text-overflow
  74. Text-shadow
  75. Transitions
  76. word-break
  77. OM Scroll-behavior
  78. Flexible Box Layout Module
  79. Font unicode-range subsetting
  80. Intrinsic & Extrinsic Sizing
  81. letter-spacing CSS property
  82. Media Queries: interaction media features
  83. Media Queries: resolution feature
  84. rem (root em) units
  85. text-decoration styling
  86. text-emphasis styling
  87. TTF/OTF - TrueType and OpenType font support
  88. Viewport units: vw, vh, vmin, vmax
  89. :placeholder-shown CSS pseudo-class
  90. Crisp edges/pixelated images
  91. Backdrop Filter
  92. Canvas Drawings
  93. Cross-Fade Function
  94. font-smooth
  95. image-set
  96. Logical Properties
  97. Motion Path
  98. pointer-events (for HTML)
  99. position:sticky
  100. Reflections
  101. text-size-adjust
  102. text-stroke
  103. zoom
  104. Improved kerning pairs & ligatures
  105. All CSS features

JS API

  1. Ambient Light API
  2. Arrow functions
  3. Base64 encoding and decoding
  4. Battery Status API
  5. Beacon API
  6. Blob constructing
  7. Blob URLs
  8. BroadcastChannel
  9. Channel messaging
  10. Clipboard API
  11. const
  12. Cross-document messaging
  13. Cross-Origin Resource Sharing
  14. crypto.getRandomValues()
  15. CSS Font Loading
  16. CSS.supports() API
  17. CustomEvent
  18. DeviceOrientation & DeviceMotion events
  19. Document Object Model Range
  20. DOM Parsing and Serialization
  21. ECMAScript 5
  22. Element.getBoundingClientRect()
  23. Element.insertAdjacentHTML()
  24. ES6 Number
  25. Fetch
  26. FIDO U2F API
  27. File API
  28. FileReader API
  29. Full Screen API
  30. Gamepad API
  31. Geolocation
  32. getUserMedia/Stream API
  33. Hashchange event
  34. High Resolution Time API
  35. IndexedDB
  36. Input Method Editor API
  37. Internationalization API
  38. JSON parsing
  39. let
  40. matches() DOM method
  41. matchMedia
  42. maxlength attribute for input and textarea elements
  43. Media Source Extensions
  44. Mutation Observer
  45. Navigation Timing API
  46. Object RTC (ORTC) API for WebRTC
  47. Online/offline status
  48. Page Visibility
  49. PageTransitionEvent
  50. Pointer events
  51. PointerLock API
  52. Promises
  53. Proximity API
  54. Proxy object
  55. Push API
  56. requestAnimationFrame
  57. Resource Timing
  58. Rest parameters
  59. Screen Orientation
  60. Server-sent events
  61. Service Workers
  62. Shared Web Workers
  63. Touch events
  64. Typed Arrays
  65. User Timing API
  66. Vibration API
  67. Web Animations API
  68. Web Audio API
  69. Web Cryptography
  70. Web MIDI API
  71. Web Notifications
  72. Web Sockets
  73. Web Storage - name/value pairs
  74. Web Workers
  75. WebRTC Peer-to-peer connections
  76. XMLHttpRequest advanced features
  77. Basic console logging functions
  78. Document.execCommand()
  79. Efficient Script Yielding: setImmediate()
  80. Filesystem & FileWriter API
  81. Network Information API
  82. Object.observe data binding
  83. Permissions API
  84. Speech Recognition API
  85. Speech Synthesis API
  86. Web SQL Database
  87. All JS API features

Tables

About

"Can I use" provides up-to-date browser support tables for support of front-end web technologies on desktop and mobile web browsers.

The site was built and is maintained by Alexis Deveria, with occasional updates provided by the web development community. The design used as of 2014 was largely created by Lennart Schoors.

FAQ

May I use your data in my presentation/article/site, etc?

Yes, the support data on this site is free to use under the CC BY 4.0 license.

Is there a way to see the support data in colors other than red/green?

Yes, you can enable accessible colors from this link or from the option under Settings. This color scheme will be used again on revisit.

Do you have the data available in a raw format?

Yes, the raw support data is available on GitHub and is updated regularly.

Could you add feature X to the site?

Adding features takes quite some time and there are many requests for additions. Because of this I use GitHub issues to manage requests. Feel free to add/vote for your feature there.

If you've done the research yourself already, you can also submit a feature on GitHub.

Could you cover email clients too so I can see what I can use in HTML emails?

That certainly sounds useful, but for now I only intend to take on web browser support.

Which features do you choose to add to this list?

I use the following criteria:

  1. Useful to web designers/developers
  2. Likely to be eventually implemented by the majority of browsers
  3. Not already fully supported in even old browsers. These features can be made searchable but will not include support tables.

Most features are added in priority order from this list.

How do you test support?

I use a hand-crafted test suite to test features, which tests for basic support of each feature.

The test suite is publicly available at tests.caniuse.com.

Where do you get your information for upcoming versions?

Most information comes directly from the latest developer/preview/nightly builds.

When is a feature considered "supported"?

When its primary purpose is largely fulfilled. It does not mean it's 100% supported, just that it's usable in most cases.

How often is this page updated?

I try to keep it as current as possible, with new information being usually being processed within a few days. Follow the feed if you'd like keep up with all the changes made.

Legend

  • Green = Supported
  • Red = Not supported
  • Greenish yellow = Partial support
  • Gray = Support unknown

*Global usage share statistics based on data from StatCounter GlobalStats for December, 2015. See the browser usage table for usage by browser version.