2011-08-30 75 views
1

所以我想用css縮小圖像到容器的大小,同時保持其縱橫比。指定最小高度或寬度時,似乎很容易達到此目的,但不能同時滿足這兩個要求。有任何想法嗎?用CSS縮小圖像以適應容器

+1

所以...爲什麼你不能只使用寬度或高度? –

+0

@David:如果他只是選擇寬度,那麼當他有一個非常高*的圖像時,它將打破容器的高度限制。 –

回答

1

找出高度較小或寬度較小;無論哪個維度較小,請設置img的屬性,但不能設置其他屬性。假設您未在CSS中設置img的大小,則應該在容器的約束範圍內儘可能使圖像儘可能大,同時保持高寬比。此代碼假定您的容器是div

var height = $('#divImg').Height(); 
var width = $('#divImg').Width(); 

if (height > width) 
{ 
    $('#divImg img').Width(width); 
} 
else 
{ 
    $('#divImg img').Height(height); 
} 

編輯:

如果你不使用jQuery,您可以使用下面的CSS技巧,以保持縱橫比。更改100px要將容器的大小:

#divImg img { 
    height: 100px; 
    width: auto; 
} 
#divImg img { 
    height: auto; 
    width: 100px; 
} 

CSS styling image height and width while maintaining aspect ratio借來的。

+0

這也假定他使用[tag:jquery]。因此,[tag:javascript]。儘管我意識到JavaScript是必不可少的...... –

+0

@David,我更新了我的示例以包含僅限CSS的方法,儘管它預先假設他知道他的容器的大小。 –