En arrière-plan, la taille de la propriété est ie>=9 seulement, mais si c'est bien avec vous, vous pouvez utiliser un div avec background-image
et définissez background-size: contain
:
div.image{
background-image: url("your/url/here");
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}
Maintenant, vous pouvez simplement mettre votre div de taille de tout ce que vous voulez et pas seulement l'image de maintenir son ratio d'aspect, il sera également centralisé à la fois verticalement et horizontalement à l'intérieur de la div. Il suffit de ne pas oublier de définir les tailles sur le css depuis divs n'ont pas la largeur/hauteur de l'attribut de la balise elle-même.
Cette approche est différente de celle setecs réponse, à l'aide de cette le domaine de l'image sera constante et définie par vous (en laissant des espaces vides, horizontalement ou verticalement, en fonction de la taille de la div et de l'image ratio d'aspect), tandis que setecs réponse, vous obtenez une boîte qui a exactement la taille de l'image à l'échelle (sans espaces vides).
Edit:
Selon le MDN fond de taille de documentation , vous pouvez simuler le fond de la taille de la propriété dans IE8 à l'aide d'un propriétaire de filtre déclaration:
Si Internet Explorer 8 ne prend pas en charge en arrière-plan, la taille de la propriété, il est possible d'émuler certaines de ses fonctionnalités à l'aide de la non-standard -ms-fonction de filtre:
-ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='path_relative_to_the_HTML_file', sizingMethod='scale')";