【问题标题】:Flexbox not displaying images correctly in ChromeFlexbox 无法在 Chrome 中正确显示图像
【发布时间】:2020-09-12 09:17:15
【问题描述】:

我有一个 flexbox 设置,如 sn-p 所示,我遇到的问题是,在 Chrome 中,一旦视口小于两个图像的宽度,整个网站就会缩小,一切都搞砸了。在 Firefox 中一切正常。我已经尝试了我能想到的一切,但没有任何效果。这是我网站的链接:airstarkennels.com

body {
  background: #000000 url("https://www.airstarkennels.com/images/main-background.jpg") left bottom/cover no-repeat fixed;
}
#first-page-header {
  color: #ff00ee;
  text-align: center;
}
#parents-page-content-wrapper {
  margin: 0 0 2em;
}
#parents-page-mommy-info-wrapper {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
}
.parents-page-image-wrapper {
  display: flex;
  flex-flow: row nowrap;
  max-width: 100%;
}
.parents-page-images {
  max-height: 350px;
  opacity: 1;
  cursor: pointer;
  transition: 0.4s;
}
.parents-page-images:hover {
  opacity: 0.8;
}
<main>
  <div id="parents-page-content-wrapper">
    <h1 id="first-page-header">Parents</h1>
    <div id="parents-page-mommy-info-wrapper">
      <div class="parents-page-image-wrapper">
        <img id="parents-page-mommys-pedigree" class="parents-page-images" src="https://www.airstarkennels.com/images/mommy-pedigree.jpg">
        <img id="parents-page-mommy-image" class="parents-page-images" src="https://www.airstarkennels.com/images/mommy.jpg">
      </div>
    </div>
  </div>
</main>

【问题讨论】:

  • 您好,您希望图片在移动视图中并排放置还是换行?
  • @M.A Shahbazi 他们应该坐在一起

标签: html css google-chrome flexbox


【解决方案1】:

这基本上是因为内容溢出在 X 轴上的 chrome 上滚动。您可以将 CSS Grid 用于您的图像容器。
使用display: inline-grid 制作您的网格容器,由于图像可以有不同的宽度,我们将使用grid-template-columns: auto auto 作为列。
所以总的来说是这样的:

body {
    background: #000000
        url('https://www.airstarkennels.com/images/main-background.jpg') left
        bottom/cover no-repeat fixed;
}

#first-page-header {
    color: #ff00ee;
    text-align: center;
}

#parents-page-content-wrapper {
    margin: 0 0 2em;
}
#parents-page-mommy-info-wrapper {
    display: flex;
    justify-content: center;
}
.parents-page-image-wrapper {
    display: inline-grid;
    grid-template-columns: auto auto;
    justify-items: space-between;
}

.parents-page-images {
    max-width: 100%;
    max-height: 350px;
    opacity: 1;
    cursor: pointer;
    transition: 0.4s;
}

.parents-page-images:hover {
    opacity: 0.8;
}
<main>
    <div id="parents-page-content-wrapper">
        <h1 id="first-page-header">Parents</h1>
        <div id="parents-page-mommy-info-wrapper">
            <div class="parents-page-image-wrapper">
                <img id="parents-page-mommys-pedigree" class="parents-page-images"
                    src="https://www.airstarkennels.com/images/mommy-pedigree.jpg">
                <img id="parents-page-mommy-image" class="parents-page-images"
                    src="https://www.airstarkennels.com/images/mommy.jpg">
            </div>
        </div>
    </div>
</main>

【讨论】:

  • Chrome 根本不会显示我的网格容器。我还没有深入研究,但有什么想法吗?
  • @claronic 检查您的实时网站后,我发现您做错了什么。只需将 .parents-page-images { height: 100%;} 行替换为 max-height: 350px; 即可。
  • 是的,你是对的。我现在早该想到的。谢谢!
猜你喜欢
  • 2013-04-05
  • 2019-05-28
  • 2017-10-13
  • 2023-03-14
  • 1970-01-01
  • 2014-06-02
  • 2015-11-30
  • 2020-08-27
  • 2021-09-26
相关资源
最近更新 更多