用html / css填充图像拼接空间

时间:2018-05-31 18:10:23

标签: html css web frontend

我正在尝试制作一个“图像拼接”,主要由相同大小的图像组成,其中一些是双倍高度。

他们都应该像这样整齐地对齐:

enter image description here

但仍然是这样的: enter image description here

我知道用“div”和“float:left”这样做更“容易”,但我与列表有关。

有人知道我该如何解决这个问题?!

2 个答案:

答案 0 :(得分:1)

使用flexbox。你没有必要使用清单?除非这是家庭作业,否则他会让你做一些不是最佳实践的事情



.mosaic-container {
  display: flex;
  justify-content: space-between;
  width: 330px;
  padding: 10px;
  background-color: blue;
  border: 3px solid black;
}

.left-col, .mid-col, .right-col {
  display: flex;
  flex-direction: column;
  flex: 0 0 100px;
}

.left-col .mosaic-tile:first-of-type, .right-col .mosaic-tile:first-of-type {
  margin-bottom: 10px;
}

.mid-col .mosaic-tile {
  height: 100%;
}

.mosaic-tile {
  width: 100%;
  height: 100px;
  background-color: #fff;
}

<div class="mosaic-container">
  <div class="left-col">
    <div class="mosaic-tile">1.1</div>
    <div class="mosaic-tile">2.1</div>
  </div>
  <div class="mid-col">
    <div class="mosaic-tile">1.2</div>
  </div>
  <div class="right-col">
    <div class="mosaic-tile">1.3</div>
    <div class="mosaic-tile">2.2</div>
  </div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

我相信您可以通过使用CSS网格https://learncssgrid.com/以更简单,更具面向未来的方式实现这一点。通常不建议使用基于浮点数的布局,类似于基于表格的布局。

如果基于float设置,我会创建一个左列div,中间列div和右列div所有float:left。然后我将两个图像放在左边,高中间放置,最后两个放在右列div中。