Element.currentCSSZoom is a read-only number: the effective CSS zoom on an element — its own zoom multiplied by every ancestor’s zoom (MDN).
Read the notes below before you get or set this property. Prefer feature detection when support is limited.
Syntax
Use el.currentCSSZoom. Start with this line.
JavaScript
element.currentCSSZoom
Call
What it does
element.currentCSSZoom
Primary signature.
Built into the browser. Read or assign el.currentCSSZoom — no import required.
Library declarations
JavaScript
element.currentCSSZoom
Parameters
This member has no parameters beyond those shown in the signature.
Return Value
Return Value
Description
*
Number (effective zoom)
JavaScript Examples
Example 1 — Feature-Detect and Read
Check support, then read currentCSSZoom on an unzoomed element.
JavaScript
if ("currentCSSZoom" in Element.prototype) {
const el = document.getElementById("box");
console.log(el.currentCSSZoom); // 1 when unzoomed
} else {
console.log("not supported");
}
Read the hidden node. MDN: no layout box → currentCSSZoom is 1.
Rule. Only rendered elements carry a meaningful effective zoom.
Compatibility
Browser Support
Element.currentCSSZoom is Baseline 2026 Newly available (MDN: since March 2026). Use feature detection before relying on it in production.
✓ Baseline · Newly available
Element.currentCSSZoom
Effective CSS zoom as a number — multiply nested zoom values; returns 1 when not rendered.
NewNewly available (2026)
Google ChromeAll versions · Desktop & Mobile
Full support
Mozilla FirefoxAll versions · Desktop & Mobile
Full support
Apple SafariAll versions · macOS & iOS
Full support
Microsoft EdgeAll versions · Chromium & Legacy
Full support
Internet ExplorerIE 6+ · Legacy environments
Full support
OperaAll modern versions
Full support
currentCSSZoomDetect first
Bottom line: Safe on latest evergreen browsers from March 2026 onward. Gate with if ("currentCSSZoom" in Element.prototype) for older clients.
Frequently Asked Questions
A read-only number: the effective CSS zoom for the element — its own zoom multiplied by every ancestor's zoom. If the element is not rendered, it returns 1.
No. MDN marks Element.currentCSSZoom as Baseline 2026 Newly available (since March 2026). It is not Deprecated, Experimental, or Non-standard. Still feature-detect on older browsers.
No. It is read-only. Change zoom with CSS (or element.style.zoom), then read currentCSSZoom again.
They multiply. If a parent has zoom: 2 and a child has zoom: 3, the child's currentCSSZoom is 6.
If the element (or an ancestor) has no CSS box — for example display: none — currentCSSZoom is 1.
Those APIs ignore CSS zoom. Multiply (or divide) by currentCSSZoom when you need to reconcile them with viewport-relative sizes like getBoundingClientRect().