背景图像中体:对IE之前不工作(background-image in body:before on

2019-10-22 10:47发布

我已创建了用身体网页设计:标记“分裂”的设计,类似的WordPress主题TwentyFifteen前( https://wordpress.org/themes/twentyfifteen/ )

但我不使用的“左”列中的颜色,但图像。 代码工作在所有浏览器罚款(铬,FF,Safari浏览器),但不是在IE(版本9-11)。

CSS的样子:

body::before {
    background: url("img/back-left.jpg") no-repeat center top ;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    content: "";
    display: block;
    height: 100%;
    min-height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    width: 30%;
    z-index: 1;
}

效果:背景图片不显示,打开IE浏览页面时。 当我去到一个子网站,照片是显示。 当我转换的浏览器窗口中,照片被展示。 当我在IE工具栏开发改变任何东西(不管是什么),照片是显示。

如果我使用的背景颜色,而不是背景(或背景图片),它工作正常的IE浏览器。

有任何想法吗? 我认为这听起来像一个渲染的东西。 背景图像被渲染得太晚,所以没有显示(而不是我在页面上互动寄托都)。 但是,如何解决?

Answer 1:

我发现了一个“解决方案”,运行到其他问题。 ;-)

当我设置

html, body { overflow: auto; }

然后,背景图像在IE 10和IE 11中显示正确的但是我现在的IE 11平滑滚动的问题(使用鼠标滚轮时,背景图像跳跃所有的地方。当使用滚动条,它工作正常) 。 无论如何,这变化是为我好,比不显示背景图片。 所以我仍然希望,即MS纠正平滑滚动的bug。

我在做CodePen叉子此修正: http://codepen.io/anon/pen/rabMMm

(这是最初CodePen代码: http://codepen.io/anon/pen/qEwEVy )

或做任何知道一个解决方案来解决从IE的平滑滚动prolem?



文章来源: background-image in body:before on IE not working