Как установить максимальную высоту за $img, но сохранить пропорции

Как установить максимальную высоту или ширину для:

$img_attributes = 'height=100 width=100'. 'высокий звук = "'. $product ['product_name']'". ';

10
задан Chris 22 December 2009 в 18:29
поделиться

3 ответа

Вам следует проверить этот ответ на предмет общей информации : Пропорциональный размер изображения.

Если вы хотите, чтобы изображение было изменено без использования серверной стороны, я предлагаю вам использовать Javascript. Вот учебное пособие.

Короче говоря, у вас есть функция JavaScript, которая вернет новую Ширину и Высоту:

function scaleSize(maxW, maxH, currW, currH){
  var ratio = currH / currW;
  if(currW >= maxW){
        currW = maxW;
        currH = currW * ratio;
  } else >if(currH >= maxH){
        currH = maxH;
        currW = currH / ratio;
  }
  return [currW, currH];
}

С помощью этой функции вы можете установить ширину и высоту изображения:

img.width = newW;
img.height = newH;

Но лучшим способом будет сделать это на стороне сервера. Это предотвратит странный эффект на стороне клиента.

4
ответ дан 3 December 2019 в 17:20
поделиться

Следующий стиль приведет к тому, что все изображения, использующие класс "MaxSize" css, будут иметь максимальную высоту 100px и максимальную ширину 100px. Если изображение меньше, то оно не будет растягиваться.

<style>
IMG.MaxSized
{
max-width: 100px;
max-height: 100px;
}
</style>

Как упоминал Пекка, для того, чтобы это работало в современных версиях IE, необходимо иметь XHTML 1.0 Strict DTD, но я лично считаю, что это подходящий подход.

.
2
ответ дан 3 December 2019 в 17:20
поделиться

Ну, есть максимальная высота и максимальная ширина CSS свойства, не так ли? Это работает во всех основных браузерах, кроме IE 6 и IE 7.

.
17
ответ дан 3 December 2019 в 17:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: