html - CSS-无法并排放置图像列表

标签 html css image

我有一个需要并排对齐的 CSS 图像列表。我的意思是两个相邻的图像应该共享一个公共(public)边界。因此,如果有 20 张图像,我想将它们堆叠成 4 行,每行可以根据屏幕尺寸进行更改。目前,我显然不想要图像之间的空白。我附上了一个 JS-Fiddle 来展示我在做什么。

请帮忙

CSS

 .photo-grid {

    margin: 1em auto;

    max-width: 300%;

    text-align: center;

}



.photo-grid li {



    display: inline-block;

    margin: 1em;

    width: 125px;

}



.photo-grid img {

    display: block;

    height: auto;

    max-width: 100%;

}



.photo-grid figure {

    height: 125px;

    overflow: hidden;

    position: relative;

    width: 125px;

}



.photo-grid figcaption {

    background: rgba(0,0,0,0.8);

    color: white;

    display: table;

    height: 100%;

    left: 0;

    opacity: 0;

    position: absolute;

    right: 0;

    top: 0;

    z-index: 100;

}



.photo-grid figcaption p {

    display: table-cell;

    font-size: 1.5em;

    position: relative;

    top: -40px;

    width: 289px;

    vertical-align: middle;

}


.photo-grid li:hover figcaption {

    opacity: 1;

}

JS Fiddle

最佳答案

要删除图像之间的空格,最简单的方法可能是删除元素之间 HTML 中的任何空白。您的图像设置为 inline-block,这意味着元素之间的空白将像任何其他内联元素一样保留(如 spana或其他)。

另一种方法是在容器上设置font-size: 0,这将使元素之间的空间大小为0,从而将它们从显示中移除。

另一种方法是 float 图像,这将使它们成为 block 级元素(因此不保留空白)并将它们彼此相邻堆叠。

img {
  max-width: 200px;
  height: auto;
}

.font-zero {
  font-size: 0;
}

.float {
  overflow: auto;
}
.float img {
  float: left;
}
<img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg"><img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg"><img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg">

<div class="font-zero">
  <img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg">
  <img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg">
  <img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg">
</div>

<div class="float">
  <img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg">
  <img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg">
  <img src="http://static4.businessinsider.com/image/56c640526e97c625048b822a-480/donald-trump.jpg">
</div>

关于html - CSS-无法并排放置图像列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41769045/

相关文章:

javascript - 我怎样才能制作一个隐藏的 html 表格用于导出?

html - css - 更改事件导航丸颜色 Bootstrap

python - 使用 OpenCV Python 用霍夫变换裁剪圆

html - 如何调整图像大小以始终适合所有屏幕尺寸(例如 Bootstrap 4)?

python - 在 wxPython 中调整面板大小时出现图形问题

php - Mysql 查询结果

jquery - 单击 HTML5 输入类型编号时 iPhone 标题位置发生变化

javascript - 如何将值从数据库传递到单选按钮组?

jquery - IE 不加载 .load() 元素的 css & js 不工作

javascript - jquery - 根据条件删除类