2024
30 featuresThe backdrop-filter CSS property applies graphical effects such as blurring or color shifting to the area behind an element.
The navigator.cookieEnabled property is a boolean for whether the browser accepts or ignores attempts to write cookie data.
The getHTML() method of Element and ShadowRoot objects serializes an element's DOM to an HTML string.
The optional willReadFrequently parameter of a canvas's getContext() method permits the browser to optimize for frequent getImageData() calls by avoiding hardware acceleration. Also known as multiple readback.
Multiple <details> elements which use the same name attribute are mutually exclusive. When one member of the group is opened, all other members are closed.
The @starting-style CSS at-rule sets the starting values for properties that are transitioning when the target element's style is first updated.
The transition-behavior: allow-discrete CSS declaration allows transitions for properties whose animation behavior is discrete. Such properties can't be interpolated and swap from their start value to the end value at 50%.
The font-size-adjust CSS property preserves apparent text size, regardless of the font used, by scaling fonts to the same size with respect to a specific metric, such as x-height. This can help make fallback fonts look the same size.
The / notation in content CSS property values adds alternative text to generated content. For example, the content: url('upvote-icon.svg') / 'Upvote' declaration adds accessible 'Upvote' text to the SVG icon. Also known as alternate text.
The CSS.registerProperty() static method and the @property CSS at-rule register custom properties for which types and behaviors can be defined.
The resize() method of an ArrayBuffer and the grow() method of a SharedArrayBuffer, constructed with the maxByteLength option, changes the size of the buffer in place.
The navigator.clipboard API asynchronously reads and writes to the system clipboard.
Gradient interpolation controls how the colors between gradient stops are calculated in CSS. For example, linear-gradient(to right in oklch longer hue, red, red); calculates in the oklch color space, with the hue going all the way around the hue circle from red back to red.
The difference(), intersection(), isDisjointFrom(), isSubsetOf(), isSupersetOf(), symmetricDifference(), and union() methods of the JavaScript Set object performs operations between two sets.
The :state() CSS pseudo-class matches custom elements based on their custom state, set through the ElementInternals.states API.
The round(), mod(), and rem() CSS functions compute rounded values and the remainder after division.
The zoom CSS property scales the size of an element. Unlike the transform property, a zoomed element affects page layout.
The light-dark() CSS function accepts two colors and uses one depending on the current color scheme.
The text-wrap: balance CSS declaration balances the length of each line when text is broken into multiple lines. Also known as headline balancing.
The AbortSignal.timeout() static method returns an abort signal that automatically aborts after a specified duration.
The writing-mode CSS property orients form elements (such as radio buttons, progress bars, or select menus) vertically when the writing mode is vertical-lr or vertical-rl. The direction CSS property sets whether inputs flow from top to bottom or bottom to top.
The Intl.Segmenter API creates a locale-aware text splitter that can separate a string into meaningful graphemes, words, or sentences.
The align-content property vertically aligns content in block layouts, like it does in flex or grid layouts.
The transform-box CSS property sets the position and dimensions of the reference box relative to which an element's transformations are calculated.
The paint-order CSS property sets the z-order of strokes, fills, and (in SVG content) markers. For example, paint-order: markers stroke fill; draws the markers, then stroke on top of markers, then fill on top of both markers and stroke.
The AbortSignal.any() static method combines an iterable of abort signals into a single signal, with the abort reason taken from the first signal to abort.
The white-space-collapse CSS property sets whether new line characters are shown as line breaks, and whether multiple consecutive spaces are all displayed or combined.
The Object.groupBy() and Map.groupBy() static methods group values of arrays and iterables based on a function that returns a key for each value.
The i32.add, i32.sub, i32.mul, i64.add, i64.sub, and i64.mul operations extend constant expressions to include arithmetic.
The Promise.withResolvers() static method is an alternative to the Promise() constructor that returns both the promise and resolution functions. You can use this to access resolve and reject outside the scope of the executor function.