动态地调整n个图像的行,所有5行的高度一致 [英] Dynamically re-size the rows for n-number of images, with all 5 rows consistent height
本文介绍了动态地调整n个图像的行,所有5行的高度一致的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
现在,我一直在寻找的是
- 所有5行必须具有相同的高度,尽管其中包含图像容器数量。
- 5图像容器,第二行具有3个第三行,分别具有6个图像容器,但它们应当具有相等的高度,在任何分辨率
- 任何数量的图像(不同的高度和宽度),但他们应该在图像容器与图像对齐到顶部,而不是中心,以帮助缓解锯齿状。
- 所有图像有不同宽度和高度,因此当放置在图像容器中时,其宽高比保持不变。
- 宽度取决于其中的图片容器数量,例如第一行中的20个图片容器的长度应该比第二行中的图片容器多10个。
html代码
身体>
< 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>
<! - 第2行 - >
< 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>中级< / 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> 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 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>
css
.outer-wrap-img {
display:table;
table-layout:fixed;
width:100%;
}
.inner-wrap-img {
display:table-cell;
padding:2px;
}
.inner-wrap-img div {
padding-bottom:75%;
position:relative;
}
.inner-wrap-img div img {
display:block;
max-width:100%;
max-height:100%;
position:absolute;
}
.red {
/ * background:#F00; * /
background-color:#CCC
}
.green {
/ * background:#0f0; * /
background-color:#CCC
}
$ b b
解决方案
因为你没有提供任何Javascript,我会为你写一些伪代码。
function doResize(){
// for each parent div
resize(parent div,images in div);
}
function resize(parent,images){
var imageHeight = parentheight / image number;
//将图片调整为imageheight
}
I have five rows with images in a containers placed inside a container for each row .
Now, what i have been looking is
- All 5 rows must be same height, in-spite of number of image containers in it.
- For example first row has 5 image container and second row has 3 third row has 6 image containers respectively, still they should be of equal height, in any resolution
- Here one row can have any number of images (different height and width) , but they should be in the image container with images align to the top, instead of center to help ease the jaggedness.
- All images have different width and height, so while placed in image container their aspect ratio kept.
- The width of depends on number of image containers in it, like 20 in first row should be wider in length , than 10 image containers in second row.
html code
<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>
css
.outer-wrap-img {
display: table;
table-layout: fixed;
width: 100%;
}
.inner-wrap-img {
display: table-cell;
padding: 2px;
}
.inner-wrap-img div {
padding-bottom: 75%;
position: relative;
}
.inner-wrap-img div img {
display: block;
max-width: 100%;
max-height: 100%;
position: absolute;
}
.red {
/* background: #F00;*/
background-color:#CCC
}
.green {
/*background: #0f0;*/
background-color:#CCC
}
解决方案
Since you haven't provided any Javascript, I'll write some pseudo-code for you
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
}
这篇关于动态地调整n个图像的行,所有5行的高度一致的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文