我的背景图片不会出现在div上

时间:2017-07-03 22:47:55

标签: javascript jquery html css node.js

我正在尝试创建一个div并在jQuery中为它添加一个背景图像。出于某种原因,我不能这样做。如果我改为背景颜色为白色,我会得到一个白色背景。这是我的代码:

function appendToDom(poster) {
        var aPoster = $('<div>');
        aPoster.css({
                display: 'inline block',
                float: 'left',
                margin: '10px',
                marginLeft: '37px',
                marginTop: '20px',
                width: '200px',
                height: '300px',
                fontSize: '36px',
                color: 'black',
                //backgroundColor: 'white',
                backgroundSize: '200px 300px',
                backgroundImage: './../images/question.png'
            })
            /*
                    $(aPoster).attr("css","background-image: url(~/desktop/MyMovies/public/js/images/question.jpeg)");
                    $(aPoster).attr("css","background-size: 200px 300px");*/
        $(main).append(aPoster);
    }

感谢您的所有建议!所以我接受了给我的建议,但它仍然不适合我。这是我所拥有的截图:

my improved code

NVM我明白了!谢谢!

2 个答案:

答案 0 :(得分:0)

如果样式与您的情况类似,则路径必须相对于html文档。请检查一下。

答案 1 :(得分:0)

尝试让您的方法看起来像这样......

 aPoster.css({
            'display': 'inline block',
            'float': 'left',
            'margin': 10,
            'margin-left': 37,
            'margin-top': 20,
            'width': 200,
            'height': 300,
            'font-size': 36,
            'color': 'black',
            'background-color': 'white',
            'background-size': '200px 300px',
            'background-image': 'url("./../images/question.png")'

尝试这样的事情,看看你得到了什么。你还注意到我用像素去除了值。因为JavaScript的CSS属性的默认值具有以像素为单位的单位。试试吧,看看它是否有效。希望这有帮助。哦,最后一件事,如果您使用了外部脚本,请不要忘记使用URL并使其相对于脚本本身而不是您的主页...但在您的情况下,样式将内联添加到div元素所以你应该相对于你的主页面,即创建div的页面......