1. Scoped Styles: the @scope rule

    Allows CSS rules to be scoped to part of the document, with upper and lower limits described by selectors.

  2. :default CSS pseudo-class

    The `:default` pseudo-class matches checkboxes and radio buttons which are checked by default, `<option>`s with the `selected` attribute, and the default submit button (if any) of a form.

  3. CSS @when / @else conditional rules

    Syntax allowing CSS conditions (like media and support queries) to be written more simply, as well as making it possible to write mutually exclusive rules using `@else` statements.

  4. DOM manipulation convenience methods

    jQuery-like methods on DOM nodes to insert nodes around or within a node, or to replace one node with another. These methods accept any number of DOM nodes or HTML strings as arguments. Includes: `ChildNode.before`, `ChildNode.after`, `ChildNode.replaceWith`, `ParentNode.prepend`, and `ParentNode.append`.

  5. JavaScript modules via script tag

    Loading JavaScript module scripts (aka ES6 modules) using `<script type="module">` Includes support for the `nomodule` attribute.

  6. JavaScript modules: dynamic import()

    Loading JavaScript modules dynamically using the import() syntax

  7. CSS Flexible Box Layout Module

    Method of positioning elements in horizontal or vertical stacks. Support includes all properties prefixed with `flex`, as well as `display: flex`, `display: inline-flex`, `align-content`, `align-items`, `align-self`, `justify-content` and `order`.

  8. Fullscreen API

    API for allowing content (like a video or canvas element) to take up the entire screen.

  9. Multiple file selection

    Allows users to select multiple files in the file picker.

  10. Intl.PluralRules API

    API for plural sensitive formatting and plural language rules.

  11. Lookbehind in JS regular expressions

    The positive lookbehind (`(?<= )`) and negative lookbehind (`(?<! )`) zero-width assertions in JavaScript regular expressions can be used to ensure a pattern is preceded by another pattern.

  12. Resource Hints: modulepreload

    Using `<link rel="modulepreload">`, browsers can be informed to prefetch module scripts without having to execute them, allowing fine-grained control over when and how module resources are loaded.

  13. CSS3 Multiple backgrounds

    Method of using multiple images as a background

  14. CSS3 Multiple column layout

    Method of flowing information in multiple columns

  15. Trusted Types for DOM manipulation

    An API that forces developers to be very explicit about their use of powerful DOM-injection APIs. Can greatly improve security against XSS attacks.

  16. WebAssembly Bulk Memory Operations

    An extension to WebAssembly adding bulk memory operations and conditional segment initialization

  17. WebAssembly Multi-Value

    An extension to WebAssembly allowing instructions, blocks and functions to produce multiple result values

  18. cssrule api

  19. cssrulelist api

  20. cssrulelist api: item

  21. cssrulelist api: length

  22. cssrule api: csstext

  23. cssrule api: parentrule

  24. cssrule api: parentstylesheet

  25. cssrule api: type

  26. htmlulistelement api

  27. htmlulistelement api: compact

  28. htmlulistelement api: type

  29. css at-rule: `@charset`

  30. css at-rule: `@container`

  31. css at-rule: `@counter-style`: `pad`

  32. css at-rule: `@document`

  33. css at-rule: `@document`: `regexp()`

  34. css at-rule: `@font-face`: src

  35. css at-rule: `@font-face`: svg fonts

  36. css at-rule: `@font-face`: woff

  37. css at-rule: `@font-face`: woff 2

  38. css at-rule: `@font-feature-values`

  39. css at-rule: `@font-palette-values`

  40. css at-rule: `@import`

  41. css at-rule: `@keyframes`

  42. css at-rule: `@layer`

  43. css at-rule: `@media`

  44. css at-rule: `@page`

  45. css at-rule: `@property`

  46. css at-rule: `@scope`

  47. css at-rule: `@starting-style`

  48. html element: ul

  49. html element: ul: compact

  50. html element: ul: type