Index
CSS
- #rrggbbaa hex color notation
- ::first-letter CSS pseudo-element selector
- ::placeholder CSS pseudo-element
- ::selection CSS pseudo-element
- :default CSS pseudo-class
- :dir() CSS pseudo-class
- :focus-visible CSS pseudo-class
- :has() CSS relational pseudo-class
- :in-range and :out-of-range CSS pseudo-classes
- :indeterminate CSS pseudo-class
- :is() CSS pseudo-class
- :optional CSS pseudo-class
- :placeholder-shown CSS pseudo-class
- @font-face Web fonts
- Blending of HTML/SVG elements
- calc() as CSS unit value
- Case-insensitive CSS attribute selectors
- ch (character) unit
- Crisp edges/pixelated images
- CSS 2.1 selectors
- CSS ::marker pseudo-element
- CSS :any-link selector
- CSS :read-only and :read-write selectors
- CSS @when / @else conditional rules
- CSS all property
- CSS Anchor Positioning
- CSS Animation
- CSS Appearance
- CSS background-attachment
- CSS background-blend-mode
- CSS background-position edge offsets
- CSS background-repeat round and space
- CSS box-decoration-break
- CSS caret-color
- CSS Cascade Layers
- CSS clip-path property (for HTML)
- CSS color() function
- CSS Conical Gradients
- CSS Container Queries (Size)
- CSS Container Query Units
- CSS Container Style Queries
- CSS Containment
- CSS content-visibility
- CSS Counter Styles
- CSS Counters
- CSS Cross-Fade Function
- CSS currentColor value
- CSS Device Adaptation
- CSS display: contents
- CSS element() function
- CSS Exclusions Level 1
- CSS Feature Queries
- CSS Filter Effects
- CSS filter() function
- CSS first-line pseudo-element
- CSS Flexible Box Layout Module
- CSS Font Loading
- CSS font-display
- CSS font-feature-settings
- CSS font-palette
- CSS font-size-adjust
- CSS font-stretch
- CSS font-variant-alternates
- CSS font-variant-numeric
- CSS Generated content for pseudo-elements
- CSS grab & grabbing cursors
- CSS Gradients
- CSS Grid Layout (level 1)
- CSS hanging-punctuation
- CSS Hyphenation
- CSS image-set
- CSS Initial Letter
- CSS initial value
- CSS inline-block
- CSS justify-content: space-evenly
- CSS line-clamp
- CSS Logical Properties
- CSS Masks
- CSS math functions min(), max() and clamp()
- CSS min/max-width/height
- CSS Motion Path
- CSS namespaces
- CSS Nesting
- CSS outline properties
- CSS overflow property
- CSS overflow-anchor (Scroll Anchoring)
- CSS overscroll-behavior
- CSS page-break properties
- CSS Painting API
- CSS position:fixed
- CSS position:sticky
- CSS print-color-adjust
- CSS Regions
- CSS Relative color syntax
- CSS Repeating Gradients
- CSS resize property
- CSS revert value
- CSS Scroll Snap
- CSS Scroll-behavior
- CSS scrollbar styling
- CSS Shapes Level 1
- CSS Subgrid
- CSS Table display
- CSS Text Box
- CSS text-indent
- CSS text-justify
- CSS text-orientation
- CSS text-wrap: balance
- CSS touch-action property
- CSS unset value
- CSS user-select: none
- CSS Variables (Custom Properties)
- CSS widows & orphans
- CSS will-change property
- CSS writing-mode property
- CSS zoom
- CSS3 2D Transforms
- CSS3 3D Transforms
- CSS3 Background-image options
- CSS3 Border images
- CSS3 Border-radius (rounded corners)
- CSS3 Box-shadow
- CSS3 Box-sizing
- CSS3 Colors
- CSS3 Cursors (original values)
- CSS3 Cursors: zoom-in & zoom-out
- CSS3 font-kerning
- CSS3 image-orientation
- CSS3 Media Queries
- CSS3 Multiple backgrounds
- CSS3 Multiple column layout
- CSS3 object-fit/object-position
- CSS3 Opacity
- CSS3 Overflow-wrap
- CSS3 selectors
- CSS3 tab-size
- CSS3 text-align-last
- CSS3 Text-overflow
- CSS3 Text-shadow
- CSS3 Transitions
- CSS3 word-break
- display: flow-root
- display: run-in
- Font unicode-range subsetting
- Fullscreen API
- gap property for Flexbox
- getComputedStyle
- Intrinsic & Extrinsic Sizing
- LCH and Lab color values
- letter-spacing CSS property
- Media Queries: interaction media features
- Media Queries: Range Syntax
- Media Queries: resolution feature
- Pointer events
- prefers-color-scheme media query
- prefers-reduced-motion media query
- Rebeccapurple color
- rem (root em) units
- Scoped Styles: the @scope rule
- selector list argument of :not()
- selector list argument of :nth-child and :nth-last-child CSS pseudo-classes
- Small, Large, and Dynamic viewport units
- SVG in CSS backgrounds
- system-ui value for font-family
- text-decoration styling
- text-emphasis styling
- TTF/OTF - TrueType and OpenType font support
- ui-serif, ui-sans-serif, ui-monospace and ui-rounded values for font-family
- Variable fonts
- View Transitions API (single-document)
- Viewport units: vw, vh, vmin, vmax
- Window.devicePixelRatio
- :focus-within CSS pseudo-class
- Background-clip: text
- background-position-x & background-position-y
- CSS -webkit-user-drag property
- CSS Backdrop Filter
- CSS Canvas Drawings
- CSS Environment Variables env()
- CSS font-smooth
- CSS overflow: overlay
- CSS pointer-events (for HTML)
- CSS Reflections
- CSS text-size-adjust
- CSS text-stroke and text-fill
- CSS3 attr() function for all properties
- Explicit descendant combinator >>
- High-quality kerning pairs & ligatures
- Scoped attribute
- All CSS features
HTML5
- accept attribute for file input
- async attribute for external scripts
- Attributes for form submission
- Audio element
- Audio Tracks
- Autofocus attribute
- Canvas (basic support)
- Canvas blend modes
- classList (DOMTokenList)
- Color input type
- contenteditable attribute (basic support)
- Custom Elements (V1)
- Custom protocol handling
- Datalist element
- dataset & data-* attributes
- Date and time input types
- defer attribute for external scripts
- Details & Summary elements
- Dialog element
- disabled attribute of the fieldset element
- Download attribute
- Drag and Drop
- Email, telephone & URL input types
- Form attribute
- Form validation
- getElementsByClassName
- Hashchange event
- hidden attribute
- HTML Imports
- HTML Media Capture
- HTML templates
- HTML5 semantic elements
- indeterminate checkbox
- Inline SVG in HTML5
- input event
- input placeholder attribute
- inputmode attribute
- Lazy loading via attribute for images & iframes
- Link type "noreferrer"
- maxlength attribute for input and textarea elements
- meter element
- Minimum length attribute for input fields
- Multiple file selection
- naturalWidth & naturalHeight image properties
- Number input type
- OffscreenCanvas
- PageTransitionEvent
- Path2D
- Pattern attribute for input fields
- Picture element
- Ping attribute
- PNG favicons
- Printing Events
- progress element
- Range input type
- readonly attribute of input and textarea elements
- rel=noopener
- relList (DOMTokenList)
- Reversed attribute of ordered lists
- Ruby annotation
- sandbox attribute for iframes
- Search input type
- Selection controls for input & textarea
- Session history management
- Spellcheck attribute
- srcdoc attribute for iframes
- Srcset and sizes attributes
- Subresource Integrity
- SVG favicons
- tabindex global attribute
- Text API for Canvas
- Video element
- Video Tracks
- wbr (word break opportunity) element
- WebGL - 3D Canvas graphics
- WebGL 2.0
- Context menu item (menuitem element)
- Custom Elements (deprecated V0 spec)
- Offline web applications
- Portals
- seamless attribute for iframes
- Selectlist - Customizable select element
- All HTML5 features
Security
- 'SameSite' cookie attribute
- ChaCha20-Poly1305 cipher suites for TLS
- Content Security Policy 1.0
- Content Security Policy Level 2
- DNSSEC and DANE
- HTTP Public Key Pinning
- Referrer Policy
- Server Name Indication
- Strict Transport Security
- TLS 1.1
- TLS 1.2
- TLS 1.3
- Upgrade Insecure Requests
- Web Authentication API
- X-Frame-Options HTTP header
- All Security features
Other
- "once" event listener option
- AAC audio file format
- Animated PNG (APNG)
- autocomplete attribute: on & off values
- AV1 video format
- AVIF image format
- Brotli Accept-Encoding/Content-Encoding
- Built-in PDF viewer
- ChildNode.remove()
- Client Hints: DPR, Width, Viewport-Width
- COLR/CPAL(v0) Font Formats
- COLR/CPAL(v1) Font Formats
- CSS Paged Media (@page)
- Data URIs
- Declarative Shadow DOM
- document.elementFromPoint()
- document.head
- document.scrollingElement
- DOM manipulation convenience methods
- DOMContentLoaded
- DOMMatrix
- Dynamic Adaptive Streaming over HTTP (MPEG-DASH)
- Element.closest()
- Element.insertAdjacentElement() & Element.insertAdjacentText()
- EventTarget.addEventListener()
- EventTarget.dispatchEvent
- FLAC audio format
- focusin & focusout events
- HEIF/HEIC image format
- HEVC/H.265 video format
- HTMLElement.innerText
- HTTP/2 protocol
- HTTP/3 protocol
- JPEG 2000 image format
- JPEG XL image format
- JPEG XR image format
- KeyboardEvent.code
- KeyboardEvent.getModifierState()
- KeyboardEvent.key
- KeyboardEvent.location
- MathML
- Media Fragments
- MP3 audio format
- MPEG-4/H.264 video format
- Node.compareDocumentPosition()
- Node.textContent
- Ogg Vorbis audio format
- Ogg/Theora video format
- Opus audio format
- Passive event listeners
- PNG alpha transparency
- querySelector/querySelectorAll
- Resource Hints: dns-prefetch
- Resource Hints: modulepreload
- Resource Hints: preconnect
- Resource Hints: prefetch
- Resource Hints: preload
- Resource Hints: prerender
- SDCH Accept-Encoding/Content-Encoding
- Shadow DOM (V1)
- Signed HTTP Exchanges (SXG)
- theme-color Meta Tag
- WAI-ARIA Accessibility features
- Wav audio format
- WebAssembly
- WebAssembly BigInt to i64 conversion in JS API
- WebAssembly Bulk Memory Operations
- WebAssembly Import/Export of Mutable Globals
- WebAssembly Multi-Value
- WebAssembly Non-trapping float-to-int Conversion
- WebAssembly Reference Types
- WebAssembly Sign Extension Operators
- WebAssembly SIMD
- WebAssembly Threads and Atomics
- WebM video format
- WebP image format
- WebVTT - Web Video Text Tracks
- WOFF - Web Open Font Format
- WOFF 2.0 - Web Open Font Format
- XHTML served as application/xhtml+xml
- zstd (Zstandard) content-encoding
- Document Policy
- EOT - Embedded OpenType fonts
- HTTP Live Streaming (HLS)
- KeyboardEvent.charCode
- KeyboardEvent.which
- Mutation events
- Resource Hints: Lazyload
- Shadow DOM (deprecated V0 spec)
- SPDY protocol
- URL Scroll-To-Text Fragment
- XHTML+SMIL animation
- All Other features
JS API
- AbortController & AbortSignal
- Accelerometer
- Ambient Light Sensor
- Asynchronous Clipboard API
- Auxclick
- Base64 encoding and decoding
- Basic console logging functions
- Battery Status API
- Beacon API
- Blob constructing
- Blob URLs
- BroadcastChannel
- Channel messaging
- console.time and console.timeEnd
- Constraint Validation API
- createImageBitmap
- Credential Management API
- Cross-document messaging
- Cross-Origin Resource Sharing
- crypto.getRandomValues()
- CSS.supports() API
- CustomEvent
- DeviceOrientation & DeviceMotion events
- Document Object Model Range
- document.currentScript
- DOM Parsing and Serialization
- Element.getBoundingClientRect()
- Element.insertAdjacentHTML()
- Encrypted Media Extensions
- Fetch
- File API
- FileReader API
- FileReaderSync
- Gamepad API
- Geolocation
- getUserMedia/Stream API
- Gyroscope
- High Resolution Time API
- ImageCapture API
- IndexedDB
- IndexedDB 2.0
- IntersectionObserver
- Magnetometer
- matches() DOM method
- matchMedia
- Media Capture from DOM Elements API
- Media Source Extensions
- MediaRecorder API
- Mutation Observer
- Navigation Timing API
- navigator.hardwareConcurrency
- Object RTC (ORTC) API for WebRTC
- Online/offline status
- Orientation Sensor
- Page Visibility
- Passkeys
- Payment Request API
- Permissions API
- Permissions Policy
- Picture-in-Picture
- Pointer Lock API
- Proximity API
- Push API
- requestAnimationFrame
- requestIdleCallback
- Resize Observer
- Resource Timing (basic support)
- Screen Orientation
- Screen Wake Lock API
- Scroll methods on elements (scroll, scrollTo, scrollBy)
- scrollIntoView
- Selection API
- Server Timing
- Server-sent events
- Service Workers
- Shared Web Workers
- Streams
- Synchronous Clipboard API
- TextEncoder & TextDecoder
- Touch events
- URL API
- URLSearchParams
- User Timing API
- Vibration API
- Web Animations API
- Web Audio API
- Web Cryptography
- Web MIDI API
- Web Notifications
- Web Share API
- Web Sockets
- Web Storage - name/value pairs
- Web Workers
- WebCodecs API
- WebGPU
- WebRTC Peer-to-peer connections
- WebTransport
- WebXR Device API
- XMLHttpRequest advanced features
- Background Sync API
- Cookie Store API
- Directory selection from file input
- Do Not Track API
- document.evaluate & XPath
- Document.execCommand()
- Efficient Script Yielding: setImmediate()
- Element.scrollIntoViewIfNeeded()
- Feature Policy
- FIDO U2F API
- File System Access API
- Filesystem & FileWriter API
- Input Method Editor API
- IntersectionObserver V2
- Network Information API
- Speech Recognition API
- Speech Synthesis API
- Trusted Types for DOM manipulation
- Web Bluetooth
- Web NFC
- Web Serial API
- Web SQL Database
- WebHID API
- WebUSB
- WebVR API
- All JS API features
JS
- Array.prototype.find
- Array.prototype.findIndex
- Array.prototype.includes
- Arrow functions
- asm.js
- Async functions
- BigInt
- const
- Date.prototype.toLocaleDateString
- ECMAScript 2015 (ES6)
- ECMAScript 5
- ECMAScript 5 Strict Mode
- ES6 classes
- ES6 Generators
- ES6 Number
- ES6 Template Literals (Template Strings)
- flat & flatMap array methods
- Internationalization API
- Intl.PluralRules API
- JavaScript modules via script tag
- JavaScript modules: dynamic import()
- JSON parsing
- let
- localeCompare()
- Lookbehind in JS regular expressions
- Object.entries
- Object.values method
- Promise.prototype.finally
- Promises
- Proxy object
- Rest parameters
- Shared Array Buffer
- String.prototype.includes
- String.prototype.padStart(), String.prototype.padEnd()
- Temporal
- Typed Arrays
- unhandledrejection/rejectionhandled events
- Decorators
- Import maps
- Object.observe data binding
- All JS features