【问题标题】:Full width background image with proper aspect ratio具有适当纵横比的全宽背景图像
【发布时间】:2013-10-01 06:55:48
【问题描述】:

我在获取全角背景图像以保持其正确的纵横比时遇到问题,我已经尝试了我能想到的所有方法。

在页面上,我有一个名为 full-bg 的 CSS 类的图像。 (我使用图像的原因是该页面从 Wordpress 查询中随机调用图像,然后在其顶部显示文本,然后在页面 HTML 中显示。)

我使用的是相当标准的 CSS,我在各处都看到过,但是当您将浏览器调整为不同的宽度时,背景图像会发生倾斜,因此纵横比不再正确。

这是图片和 CSS,有什么我能做的吗?

<img class=​"full-bg active hide-for-small" src=​"/​wp-content/​uploads/​2013/​06/​Red.jpg">​

img.full-bg {
  min-height: 100%;
  min-width: 1024px;

  /* Set up proportionate scaling */
  width: 100%;
  height: auto;

  /* Set up positioning */
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0;
}

@media screen and (max-width: 1024px) { /* Specific to this particular image */
img.full-bg {
    left: 50%;
    margin-left: -512px;   /* 50% */
  }
}

注意: 我刚刚意识到可能导致问题的一种并发症。我在网站上使用 Foundation,它会随着屏幕尺寸的缩小自动调整图像大小。它通常会调整图像大小以保持其纵横比,但也许它会增加问题的复杂性?

【问题讨论】:

标签: html css background-image


【解决方案1】:

您应该使用background-size: contain;cover,具体取决于您的需要。更多信息在这里:https://developer.mozilla.org/en-US/docs/Web/CSS/background-size

请注意,如果它是背景图片,您可能实际上应该在容器上将其设为background-image

【讨论】:

  • 值得注意的是,旧版浏览器不支持此功能。
  • 也许我只需要重新审视一下,如果没有其他方法。我曾尝试切换到该格式,但页面上的其他一些问题使其难以更改。
  • @Danrhul 不一定。可以使用 AlphaImageLoader sizingMethod=scale 实现与 IE6-8 中的background-size: cover 相同的效果。
  • @ultraviol3tlux 不过效果不一样吧? Stretches or shrinks the image to fill the borders of the object. 即不保留纵横比。
  • 在您的浏览器中试用。它缩放图像,保留纵横比。
【解决方案2】:

我猜你应该改变这个:

@media screen and (max-width: 1024px) { /* Specific to this particular image */
img.full-bg {
left: 50%;
margin-left: -512px;   /* 50% */
  }
}

为此:

@media screen and (max-width: 1024px) { /* Specific to this particular image */
li:first-of-type {
left: 50%;
margin-left: -512px;   /* 50% */
  }
}

【讨论】:

  • 不幸的是,这并没有真正帮助。我也不清楚你为什么将它作为第一个类型的列表项?
  • 你的图片在&lt;li&gt;标签内,第二张图片被&lt;li&gt;标签移动,而不是&lt;img&gt;标签移动。
  • 抱歉,它不在 LI 标签内。该图像在用于页面的移动显示时第二次出现在页面上(img class="mobile-image")。背景图像出现在其上方几行(img class="full-bg active hide-for-small")。
  • 把你的屏幕放低分辨率的时候看看html代码。
猜你喜欢
  • 2018-02-27
  • 2018-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-20
相关资源
最近更新 更多