html – 如何在方格中排列两种尺寸的图像?

我正在尝试使用非表css aproach进行以下操作:

design

我必须解决的问题之一是图像可以是不同的大小,高达512×512,但整个元素应保持1:1的宽高比.

我试着让所有图像浮动,并设置

.image {
  width: 33%;
  height: 33%;
}

除了我设置为宽度的第一个:66%;身高:66%.

我也尝试将它们包装在div中以使定位更容易:

ottom">

http://codepen.io/luckydonald/pen/dOwNGX(少用)
https://jsfiddle.net/luckydonald/96hqds80/(生成css)

但是不同的图像大小会破坏行.

最佳答案
这是一个flexBox解决方案.仅限IE11,除非您使用的是shim.

.flex-container {
  display: flex;
  background: #eee;
  margin: 0 auto;
  flex: 1;
  width: 100%;
}
.flex-container.vert {
  flex-direction: column;
}
.flex-container.outer {
  width: 30vw;
  height: 30vw;
}
.flex-item {
  background: tomato;
  flex: 1;
}
.flex-item:nth-child(2n) {
  background: pink;
}
.flex-item img {
  width: 100%;
  height: 100%;
}
.double {
  flex: 2;
  background: lightgreen;
}

相关文章

vue阻止冒泡事件 阻止点击事件的执行 <div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些