SVG Image Proportions in IE9 and the Role of ViewBox
When using SVG images within an element, it is expected that the image's natural proportions are maintained when scaling. However, in IE9, this behavior can vary depending on the structure of the SVG file.
Issue:
Certain SVGs, specifically those composed of polygons, fail to scale proportionately in IE9 when contained within an element with a max-height CSS property set. This results in a stretched or distorted image.
Reason:
The difference in scaling behavior between SVGs containing polygons and paths is attributed to the presence or absence of a viewBox attribute within the SVG file.
Solution:
To ensure consistent scaling across browsers, it is recommended to always specify a viewBox attribute within the SVG file. This attribute defines the coordinate space for the SVG image. By leaving the width and height attributes of the
Example:
The following code demonstrates this solution:
<code class="xml"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 200"> <polygon points="..." /> </svg></code>
By incorporating a viewBox, IE9 and other browsers will consistently scale the SVG image while maintaining its aspect ratio, regardless of the presence of polygons or paths.
The above is the detailed content of Why Are My SVG Images Distorted in IE9? The Role of ViewBox and Consistent Scaling.. For more information, please follow other related articles on the PHP Chinese website!