Javascript 应用多个背景图像,js仅应用第一个背景图像

Javascript 应用多个背景图像,js仅应用第一个背景图像,javascript,html,css,Javascript,Html,Css,我正在尝试使用js通过element.style.background应用多个背景图像,并且只应用第一个背景。我知道支持多种背景,因为这是最新的chrome,当我使用css应用它时,效果很好 以下是我正在做的: document.getElementById("box23").style.background="rgb(255, 255, 255) url(logo.svg) center left / 48px no-repeat, rgb(255, 255, 255) url(animati

我正在尝试使用js通过element.style.background应用多个背景图像,并且只应用第一个背景。我知道支持多种背景,因为这是最新的chrome,当我使用css应用它时,效果很好

以下是我正在做的:

document.getElementById("box23").style.background="rgb(255, 255, 255) url(logo.svg) center left / 48px no-repeat, rgb(255, 255, 255) url(animation.gif) center right / contain no-repeat";

但它只适用于第一个背景。

例如,此代码适用于我:

document.getElementById("container").style.background = "url(http://goo.gl/PLN74m) left top/50% no-repeat, url(http://goo.gl/30JKDs) right top/50% no-repeat";
在这里:


我相信问题可能出在“左中”部分,顺序混乱,我相信一定是“左中”。“中间偏右”也是一样。

背景的堆叠是从上到下进行的,因此需要
rgb(255,255,255)
作为最底部的背景。而且,
contain
在速记中不起作用。您可以使用
backgroundSize
属性指定它

var-box23=document.getElementById(“box23”);
box23.style.background=“url(http://placehold.it/20x20)左中48px不重复\
网址(http://placehold.it/40x40)右中50px不重复\
rgb(255、255、255)”;
box23.style.backgroundSize=“48px,contain”
#框23{
最小高度:400px;
}

使用以下类创建CSS

.multi_bg_example {
  background-image: rgb(255, 255, 255) url(logo.svg),
                    rgb(255, 255, 255) url(animation.gif);

  background-repeat  : no-repeat,
                       no-repeat;

  background-position: center left,
                       center right;
}
然后javascrip:

<script>
    document.getElementById("box23").addClass('multi_bg_example');
</script>

document.getElementById(“box23”).addClass(“multi_bg_示例”);

我想,问题不在
左中部分,而是
rgb
部分后缺少逗号。啊,是的,没有注意到。这是一个更干净的解决方案,我同意。谢谢,我没有想过这样做,因为出于某种原因,我想节省上课时间。