CSS will-change Property
Hints to the browser about which properties are expected to change for optimization
Syntax
will-change: auto | <animatable-feature>;Values
| Value | Description |
|---|---|
| auto | No specific hints (default) |
| transform | Optimizes for transform changes |
| opacity | Optimizes for opacity changes |
| scroll-position | Optimizes for scroll position changes |
| contents | Optimizes for content changes |
Example
.about-to-animate {
will-change: transform, opacity;
}
.done-animating {
will-change: auto;
}Understanding CSS will-change
The CSS will-change property hints to the browser about which properties are expected to change for optimization. As part of the Transform & Animation module in CSS, it is one of the most commonly used properties for controlling the visual presentation of web pages.
You can set will-change to values such as auto, transform, opacity, scroll-position, among others. Each value changes how the browser renders the affected element, giving you fine-grained control over your page layout and design. Choosing the right value depends on the specific design requirements of your project.
Common use cases for the will-change property include responsive web design, component-based layouts, and creating visually consistent interfaces across devices. It works closely with related properties like transform, opacity, transition to achieve complex styling effects. Understanding how these properties interact helps you write cleaner, more maintainable stylesheets.
Browser support for will-change is excellent across all modern browsers including Chrome, Firefox, Safari, and Edge. For older browsers, consider using fallback values or progressive enhancement strategies. The property can also be set dynamically via JavaScript using element.style.willChange or the CSS custom properties (variables) approach for theming.
Related Properties
transformApplies a 2D or 3D transformation to an element such as rotate, scale, skew, or translate
opacitySets the transparency level of an element and its children
transitionShorthand for transition-property, transition-duration, transition-timing-function, and transition-delay
animationShorthand for all animation properties applying keyframe-based animations to elements
containIndicates that an element and its contents are independent from the rest of the document tree
Explore More CSS Properties
Browse our complete reference of 251 CSS properties with syntax, examples, and tips.