在AngularJS中添加'ng-style'的背景图像

时间:2013-08-28 10:06:03

标签: angularjs

我似乎无法使用控制器来设置div的CSS背景属性。到目前为止,这是我的代码,根据文档:

HTML:

<div class="hero" ng-controller="HeroCtrl" ng-style="heroImage"></div>

JS:

'use strict';

angular.module('AppliedSiteApp').controller('HeroCtrl', function ($scope) {

    $scope.heroImage = {
        background: 'images/brick.jpg'
    };

    console.log($scope.heroImage);

});

CSS:

.hero {
    width: 100%;
    min-height: 350px;
    background-position: center center;
}

我还尝试在小提琴here中复制此设置。有没有人有任何想法?

3 个答案:

答案 0 :(得分:8)

$scope.heroImage = {
    background: 'url(images/brick.jpg)'
};

background-image需要url()才能正常工作。

答案 1 :(得分:4)

AngularJS现在支持ng-style

现在您可以使用ng-style="{ backgroundImage: variableInScope + '/some/string' }"

答案 2 :(得分:3)

您需要对背景图片使用css'url()函数,如下所示:

'background-image': 'url(http://i.stack.imgur.com/mfvI9.jpg)'

Plunker:http://plnkr.co/edit/PFUY0w?p=preview