HTMLImageElement: naturalWidth property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The HTMLImageElement
interface's read-only
naturalWidth
property returns the intrinsic (natural),
density-corrected width of the image in CSS pixels.
This is the width the image is if drawn with nothing constraining its width; if you neither specify a width for the image nor place the image inside a container that limits or expressly specifies the image width, this is the number of CSS pixels wide the image will be.
The corresponding naturalHeight
method
returns the natural height of the image.
Note:
Most of the time the natural width is the actual width of the image sent by the server.
Nevertheless, browsers can modify an image before pushing it to the renderer. For example, Chrome
degrades the resolution of images on low-end devices. In such cases, naturalWidth
will consider the width of the image modified
by such browser interventions as the natural width, and returns this value.
Value
An integer value indicating the intrinsic width of the image, in CSS pixels. This is
the width at which the image is naturally drawn when no constraint or specific value is
established for the image. This natural width is corrected for the pixel density of the
device on which it's being presented, unlike the value of
width
.
If the intrinsic width is not available—either because the image does not specify an
intrinsic width or because the image data is not available in order to obtain this
information, naturalWidth
returns 0.
Examples
See HTMLImageElement.naturalHeight
for example code that displays an image in both its natural "density-adjusted" size, and in its rendered size as altered by the page's CSS and other factors.
Specifications
Specification |
---|
HTML Standard # dom-img-naturalwidth-dev |
Browser compatibility
BCD tables only load in the browser