Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Сделать изображения одинаковой высоты (https://javascript.ru/forum/events/73241-sdelat-izobrazheniya-odinakovojj-vysoty.html)

mazahaler 31.03.2018 20:51

Сделать изображения одинаковой высоты
 
Здравствуйте, мне нужно сделать изображения одинаковой высоты.
Я делаю вот так:
$( document ).ready(function() {
 
 var height = $(".hotimg").height();
 
 $(".hot").each(function () {
   $(".hotimg").height(height);
  });
});

И это работает, но не всегда. Иногда при обновлении страницы браузер не высчитывает высоту картинки и высота становится = 0. Соответственно картинки как-будто нет.
Как исправить эту проблему?

laimas 31.03.2018 20:56

Цитата:

Сообщение от mazahaler
Как исправить эту проблему?

Устанавливать высоту когда изображение будет загружено, а вообще лучше определите это через CSS.

j0hnik 31.03.2018 20:58

window.onload = function() {
    var height = $(".hotimg").height();
 
 $(".hot").each(function () {
   $(".hotimg").height(height);
  });
};

mazahaler 31.03.2018 21:05

j0hnik,
Спасибо!

mazahaler 31.03.2018 21:06

laimas,
а как это через css можно определить?

mazahaler 31.03.2018 21:16

j0hnik,
появилась проблема. При первой загрузке сайта все изображения одинаковы. При последующих разные.
ctrl + f5 - все хорошо, изображения одинаковой высоты. f5 - изображения разной высоты.
Как пофиксить?

laimas 31.03.2018 21:19

Цитата:

Сообщение от mazahaler
а как это через css можно определить?

.hotimg {
   display: block; /*если не мешает*/
   height: /*высота в пикселях*/
   width: auto
}


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

рони 31.03.2018 21:21

mazahaler,
:-?
<style type="text/css">
  .hotimg {
    height: 200px;
    width: auto;
  }
  </style>

mazahaler 31.03.2018 21:28

Спасибо, наверно так лучше


Часовой пояс GMT +3, время: 23:57.