2011-09-12 33 views
14

Aşağıdaki css vardır:CSS En boy oranını sığdırmak ve korumak için nasıl uzanıyorsunuz?

bu HTML tekabül
.mod.left { 
background-image: url("http://www.myimage.jpg"); 
display: block; 
height: 160px; 
overflow: hidden; 
width: 175px; 
} 

:

Bu karmaşa içinde sonuçlanır
<div class="mod left"></div> 

:

enter image description here

Ben css3 Geçmiş- kullanırsanız boyut: 175px 160px; en boy oranı gerçekten böyle bir karmaşa içinde sonuçlanan berbat:

enter image description here

bir div uyacak şekilde bir görüntü germek için bir yolu var mı? Ancak en boy oranının korunacağı bir şekilde mi? Otomatik mahsul istiyorum.

+0

örneğiniz firefox 6.0.2 üzerinde çalışıyor. görüntü doğru oran ile kırpılır. barış –

cevap

30

Bu (background-size destekleyen tarayıcılarda) çalışması gerekir:

background-size: cover; 

Veya:

background-size: 175px auto; 

Şunu da deneyebilirsiniz

background-size: contain; 

There's a good explanation on MDC.

+4

css3 güzeldir. –

5

Arka plan görüntüsü olmak zorunda mı?

img{ 
width:300px; 
height:auto; 
} 


<img src="your-photo.png"> 
1

Sen contain değerle background-size özelliğini kullanabilirsiniz:

İşte
background-size: contain; 

çalışan bir örnektir: Yukarıdaki örnekte https://jsfiddle.net/gusrodriguez/auuk97hf/1/

, vücut arka planda bir gerilmiş imajı vardır. Ayrıca keyfi büyüklükte iki div ve en boy oranına uyan ve saklayan başka bir görüntü var.

İlgili konular