第一:定位div
设置
html, body {
width:100%;
height:100%;
margin:0;
padding:0;
}
因此,您有一个遵循视口宽度/高度的基线。
然后,创建一个包含所有带有width:500%; height:500%;的“页面”的容器
使用子divs 创建每个“页面”并给它们width:20%; height:20%;(这些 div 将是视口的 100% 宽度/高度)。并将它们向左浮动,使它们像网格一样对齐。
第二:图片
这里最好的方法是将图像设置为每个孩子的背景图像 div (="pages") 并使用 CSS 属性 background-size:contain; 和 background-position:center center; 以便它们 adpat/crop 和水平/垂直居中根据视口高度/宽度。
使用这种技术可以避免图像之间出现空白和图像失去宽高比。
带有<img> 标签的替代解决方案
如果您不介意在宽高比比您的图像宽的屏幕上图像的右侧/左侧有间隙,我不推荐此解决方案。
使用width:auto; height:100%; 调整图像大小以适应您的示例。它们以display:block; margin:0 auto; 水平居中
后台技术代码:
HTML:
<div id="wrap">
<div class="image img1"></div>
<div class="image img2"></div>
<div class="image img3"></div>
<div class="image img4"></div>
<div class="image img5"></div>
<div class="image img4"></div>
<div class="image img5"></div>
<div class="image img1"></div>
<div class="image img2"></div>
<div class="image img3"></div>
<div class="image img1"></div>
<div class="image img2"></div>
<div class="image img3"></div>
<div class="image img4"></div>
<div class="image img5"></div>
<div class="image img4"></div>
<div class="image img5"></div>
<div class="image img1"></div>
<div class="image img2"></div>
<div class="image img3"></div>
<div class="image img1"></div>
<div class="image img2"></div>
<div class="image img3"></div>
<div class="image img4"></div>
<div class="image img5"></div>
</div>
CSS:
html, body {
width:100%;
height:100%;
margin:0;
padding:0;
}
#wrap {
width:500%;
height:500%;
}
.image {
width:20%;
height:20%;
float:left;
background-size:cover;
background-position:center center;
background-repeat:no-repeat;
}
.img1{
background-image: url(http://lorempixel.com/output/city-q-g-1724-977-9.jpg);
}
.img2{
background-image: url(http://lorempixel.com/output/nature-q-c-1724-977-1.jpg);
}
.img3{
background-image: url(http://lorempixel.com/output/fashion-q-g-1724-977-5.jpg);
}
.img4{
background-image: url(http://lorempixel.com/output/city-q-c-1724-977-8.jpg);
}
.img5{
background-image: url(http://lorempixel.com/output/sports-q-g-1724-977-9.jpg);
}