Javascript 动态重新调整n个图像行的大小,使所有5行高度一致

Javascript 动态重新调整n个图像行的大小,使所有5行高度一致,javascript,jquery,html,css,image,Javascript,Jquery,Html,Css,Image,我在一个容器中有五行图像,每行放在一个容器中 现在,我一直在寻找的是 所有5行必须具有相同的高度,不管其中有多少图像容器 例如,第一行有5个图像容器,第二行有3个,第三行分别有6个图像容器,但它们的高度应相等,在任何分辨率下 在这里,一行可以有任意数量的图像(不同的高度和宽度),但它们应该在图像容器中,图像与顶部对齐,而不是居中,以帮助减轻锯齿 所有的图像都有不同的宽度和高度,所以当放置在图像容器中时,它们的纵横比保持不变 的宽度取决于其中图像容器的数量,如第一行中的20个图像容器的长度应比第二

我在一个容器中有五行图像,每行放在一个容器中

现在,我一直在寻找的是

  • 所有5行必须具有相同的高度,不管其中有多少图像容器
  • 例如,第一行有5个图像容器,第二行有3个,第三行分别有6个图像容器,但它们的高度应相等,在任何分辨率下
  • 在这里,一行可以有任意数量的图像(不同的高度和宽度),但它们应该在图像容器中,图像与顶部对齐,而不是居中,以帮助减轻锯齿
  • 所有的图像都有不同的宽度和高度,所以当放置在图像容器中时,它们的纵横比保持不变
  • 的宽度取决于其中图像容器的数量,如第一行中的20个图像容器的长度应比第二行中的10个图像容器的长度宽
  • html代码

    <body>
    <div>new</div>
    <div class="outer-wrap-img">
      <div class="inner-wrap-img">
        <div class="red">
          <!--<!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red">
          <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
        </div>
      </div>
    
    </div>
    
    
    <!--2nd row-->
    <div>old</div>
    <div class="outer-wrap-img">
      <div class="inner-wrap-img">
        <div class="red">
          <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red">
          <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
      <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
    </div>
    <!--3rd-->
    <div>mid-level</div>
    <div class="outer-wrap-img">
      <div class="inner-wrap-img">
        <div class="red">
          <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red">
         <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
    
      <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
       <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    </div>
    <!-- 4th-->
    <div>older</div>
    <div class="outer-wrap-img">
      <div class="inner-wrap-img">
        <div class="red">
          <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
         <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red">
          <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
      <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
       <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    </div>
    <!-- 5th-->
    <div>oldest</div>
    <div class="outer-wrap-img">
      <div class="inner-wrap-img">
        <div class="red">
          <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red">
         <!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
      <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="red"><!--<img src="http://www.gettyimages.ca/gi-resources/images/Homepage/Category-Creative/UK/UK_Creative_462809583.jpg" />-->
        </div>
      </div>
    
      <div class="inner-wrap-img">
        <div class="green">
          <!--<img src="http://www.gettyimages.com/gi-resources/images/CreativeImages/Hero-527920799.jpg" />-->
    </div>
      </div>
    
    </div>
    

    由于您没有提供任何Javascript,我将为您编写一些伪代码

    function doResize(){
       //for each parent div
          resize(parent div, images in div);
    }
    
    function resize(parent, images){
        var imageHeight = parentheight / image number;
        //adjust images to imageheight
    }
    

    由于您没有提供任何Javascript,我将为您编写一些伪代码

    function doResize(){
       //for each parent div
          resize(parent div, images in div);
    }
    
    function resize(parent, images){
        var imageHeight = parentheight / image number;
        //adjust images to imageheight
    }
    

    你试过什么?因为你需要它?所以没有溢出,对吗?你想缩小每个图像,保持其纵横比,以适应图像容器,即基于图像数量的图像?确切地说@Twisty,图像应保持图像容器中的纵横比,其中尺寸基于图像容器中的图像数量row@Paulie_D我试过了,但我不知道该怎么做你试过什么JS…因为你需要它?所以没有溢出,对吗?你想缩小每个图像,保持其纵横比,以适应图像容器,即基于图像数量的图像?确切地说@Twisty,图像应保持图像容器中的纵横比,其中尺寸基于图像容器中的图像数量row@Paulie_D我试过了,但是我不确定要记录什么,你可以提供一个JSFIDLEexample@sampu这不是一个人们为你编写所有代码的地方。你能提供一个JSFIDLE吗example@sampu这不是一个人们为你编写所有代码的地方。