Modern CSS3 (gelecek için önerilir ve muhtemelen en iyi çözüm)
.selector{
background-size: cover;
/* stretches background WITHOUT deformation so it would fill the background space,
it may crop the image if the image's dimensions are in different ratio,
than the element dimensions. */
}
Maks. Alan sayısı Kırpma veya deformasyon olmadan gerin (arka planı doldurmayabilir) : background-size: contain;
Mutlak germeyi zorlayın (deformasyona neden olabilir, ancak kırpma olmaz) : background-size: 100% 100%;
"Eski" CSS "her zaman çalışır" şekilde
Ebeveynin (göreceli olarak konumlandırılmış) ilk alt öğesi olarak mutlak konumlandırma görüntüsü ve ebeveyn boyutuna genişletme.
HTML
<div class="selector">
<img src="path.extension" alt="alt text">
<!-- some other content -->
</div>
CSS3'ün Eşdeğeri background-size: cover;
:
Bunu dinamik olarak başarmak için , içerme yöntemi alternatifinin tersini kullanmanız gerekir (aşağıya bakın) ve kırpılan görüntüyü ortalamanız gerekirse, bunu dinamik olarak yapmak için bir JavaScript'e ihtiyacınız olacaktır - örneğin, jQuery kullanarak:
$('.selector img').each(function(){
$(this).css({
"left": "50%",
"margin-left": "-"+( $(this).width()/2 )+"px",
"top": "50%",
"margin-top": "-"+( $(this).height()/2 )+"px"
});
});
Pratik örnek:
CSS3'ün Eşdeğeri background-size: contain;
:
Bu biraz yanıltıcı olabilir - arka planınızın, üst öğenin taşmasına neden olan boyutu, CSS'yi% 100'e, diğerini otomatik olarak ayarlayacaktır.
Pratik örnek:
.selector img{
position: absolute; top:0; left: 0;
width: 100%;
height: auto;
/* -- OR -- */
/* width: auto;
height: 100%; */
}
CSS3'ün Eşdeğeri background-size: 100% 100%;
:
.selector img{
position: absolute; top:0; left: 0;
width: 100%;
height: 100%;
}
Not: Kapak / kapsam eşdeğerlerini tamamen dinamik bir şekilde "eski" şekilde yapmak için (böylece taşmalar / oranlarla ilgilenmek zorunda kalmazsınız) sizin için oranları tespit etmek için javascript kullanmanız ve boyutları açıklandığı gibi ayarlamanız gerekir. ..