flexbox中的背景图片大小在Chrome和Firefox之间不一样

时间:2018-04-12 17:10:54

标签: css google-chrome firefox flexbox background-image

我有一个有趣的问题,即两个浏览器之间元素的背景图像没有显示相同。 Chrome 65,FF 59。

我正在使用该技术使用填充顶部百分比显示背景图像的比例,其中高度为零。

还包括一个codepen。

https://codepen.io/anon/pen/OvGeeJ

快速注意事项。内容div仅用于在视觉上知道Flex容器何时结束。

似乎%的计算方式不同。

body{
  border: 0;
  padding: 0;
  margin: 0;
}
.flex{
  display: flex;
  position: relative;
  width: 100%;
  flex-direction: row;
  flex-wrap: wrap;
  height: 300vh;
  background: black;
  align-items: flex-start;
}

.stickybg{
  height:0;
  width: 100%;
  background-image: url(https://i.imgur.com/8bKkEfR.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  padding-top: 19%;
}

.content{
  height: 100vh;
  background: #111;
}
<div class="flex">
  <div class="stickybg"></div>
</div>
<div class="content"></div>

1 个答案:

答案 0 :(得分:0)

正如dholbert在评论中所说,看来FF beta 60已经解决了这个问题。

解决方法是使用VH或VW单位,在我的情况下会模拟相同的东西。

更换

 padding-top: 19%;

代表

 padding-top: 19vw;