首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >水平对齐图像与溢出隐藏

水平对齐图像与溢出隐藏
EN

Stack Overflow用户
提问于 2018-03-25 21:42:42
回答 3查看 767关注 0票数 2

我想制作一个带有缩略图以供选择的图像滑块,我的想法是将所有图像水平地组合起来,并将其隐藏起来,而不是使用javascript,我将更改左边的位置以显示所需的缩略图,但我想不出如何将幽灵图像对齐,并隐藏超出this容器的部分,我使用的是css框架,我的HTML看起来就像这样。

代码语言:javascript
复制
.img-list {
  margin-bottom: 20px;
  height: 100px;
  width: 100%;
  overflow-x: hidden;
}

@media (max-width: 600px) {
  .img-list {
    height: 50px;
  }
}

.img-container {
  height: 100%;
  position: relative;
  overflow: visible;
}

.img-container img {
  height: 100%;
  display: inline-block;
  position: relative;
}

.img-main {
  width: 100%;
}

.img-main img {
  width: 100%;
}
代码语言:javascript
复制
<link rel="stylesheet" href="https://unpkg.com/spectre.css/dist/spectre.min.css">
<link rel="stylesheet" href="https://unpkg.com/spectre.css/dist/spectre-exp.min.css">
<link rel="stylesheet" href="https://unpkg.com/spectre.css/dist/spectre-icons.min.css">

<div class="container">
      <div class="columns">
        <div class="column col-md-12">
          <div class="img-main">
            <img src="https://preview.ibb.co/gxVppG/img1.jpg">
          </div>
          <div class="img-list ">
            <div class="img-container">
                <img src="https://preview.ibb.co/gxVppG/img1.jpg">
                <img src="https://preview.ibb.co/iZ3Lww/img2.jpg">
                <img src="https://preview.ibb.co/iQsPOb/img3.jpg">
                <img src="https://preview.ibb.co/gFFdib/img4.jpg">
                <img src="https://preview.ibb.co/hS5ppG/img5.jpg">
                <img src="https://preview.ibb.co/goKtGw/img6.jpg">
                <img src="https://preview.ibb.co/bSWjOb/img7.jpg">
                <img src="https://preview.ibb.co/i2o9pG/img8.jpg">
            </div>
          </div>
        </div>
        <div class="column col-md-12">
          <h1>Peugeaut 206</h1>
          <input type="number" onchange="showImage(this)" value="1">
          <p>Lorem, ipsum dolor sit amet consectetur adipisicing elit. Numquam culpa sint recusandae architecto odit tenetur
            fugit rerum soluta quidem velit. Eos provident nemo dolores vitae pariatur perspiciatis delectus ex dignissimos!
            Quibusdam architecto natus nam ullam cupiditate deserunt voluptatem nulla inventore nesciunt error recusandae
            quod ab, harum temporibus laboriosam numquam facilis beatae. Numquam odit dolorem quasi rerum aut cupiditate
            distinctio ad! Assumenda aut, repellat nihil, fugit doloremque doloribus harum possimus commodi aliquam recusandae
            reiciendis delectus vel modi quia sapiente sit voluptas deleniti. Repellat magni rerum fuga vitae odio ad
            ullam tempora.</p>
        </div>
      </div>
    </div>

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-03-25 22:39:04

您可以简单地使用white-space:nowrap

代码语言:javascript
复制
.img-list {
  margin-bottom: 20px;
  height: 100px;
  width: 100%;
  overflow: auto; /*Show horizontal scroll*/
}

@media (max-width: 600px) {
  .img-list {
    height: 50px;
  }
}

.img-container {
  height: 100%;
  position: relative;
  white-space:nowrap; /*Added this*/
}

.img-container img {
  height: 100%;
  display: inline-block;
  vertical-align:top; /*to remove unwanted whitespace */
  position: relative;
}

.img-main {
  width: 100%;
}

.img-main img {
  width: 100%;
}
代码语言:javascript
复制
<div class="img-main">
  <img src="https://preview.ibb.co/gxVppG/img1.jpg">
</div>
<div class="img-list ">
  <div class="img-container">
    <img src="https://preview.ibb.co/gxVppG/img1.jpg">
    <img src="https://preview.ibb.co/iZ3Lww/img2.jpg">
    <img src="https://preview.ibb.co/iQsPOb/img3.jpg">
    <img src="https://preview.ibb.co/gFFdib/img4.jpg">
    <img src="https://preview.ibb.co/hS5ppG/img5.jpg">
    <img src="https://preview.ibb.co/goKtGw/img6.jpg">
    <img src="https://preview.ibb.co/bSWjOb/img7.jpg">
    <img src="https://preview.ibb.co/i2o9pG/img8.jpg">
  </div>
</div>

票数 3
EN

Stack Overflow用户

发布于 2018-03-25 22:28:11

Flexbox是一个不错的选择,但是如果您想要添加到div中,可以添加一个缩略图图像列表white-space: nowrap

这是小提琴手:

代码语言:javascript
复制
.img-container {
  white-space: nowrap;
}

.img-container img {
  height: 80px;
  width: 80px;
  display: inline-block;
}

.img-list {
  height: 100px;
  width: 100%;
}

.img-main img {
  width: 100%;
}
代码语言:javascript
复制
<div class="img-main">
  <img src="https://preview.ibb.co/gxVppG/img1.jpg">
</div>
<div class="img-list ">
  <div class="img-container">
    <img src="https://preview.ibb.co/gxVppG/img1.jpg">
    <img src="https://preview.ibb.co/iZ3Lww/img2.jpg">
    <img src="https://preview.ibb.co/iQsPOb/img3.jpg">
    <img src="https://preview.ibb.co/gFFdib/img4.jpg">
    <img src="https://preview.ibb.co/hS5ppG/img5.jpg">
    <img src="https://preview.ibb.co/goKtGw/img6.jpg">
    <img src="https://preview.ibb.co/bSWjOb/img7.jpg">
    <img src="https://preview.ibb.co/i2o9pG/img8.jpg">
  </div>
</div>

我已经更新CSS删除了不必要的样式。

票数 1
EN

Stack Overflow用户

发布于 2018-03-25 21:56:28

我选择的解决方案是Flexbox

.img-container

  1. 添加display: flex; --这会将容器转换为flex容器。
  2. 添加flex-direction: row; --这是默认的,但说明了示例
  3. 添加flex-wrap: nowrap; --这也是默认的,但也说明了示例
  4. 最后,将overflow更改为hidden

小提琴演示

我相信这能实现你想要的。如果我搞错了请告诉我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49481245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档