2015-10-06 71 views
1

我似乎無法在使用ng樣式設置背景圖像後,將CSS樣式應用於元素。在angularjs中添加背景圖像,css無法正常工作

HTML:

<body id="bg" ng-controller="BgImagesListController" ng-style="selBGImg"> 

CSS:

#bg { 
    background: center center fixed transparent; 
    -webkit-background-size: contain; 
    -moz-background-size: contain; 
    -o-background-size: contain; 
    background-size:contain; 
} 

JS:

var mlwcApp = angular.module('mlwcApp', []) 
.controller('BgImagesListController', function($scope, $http) { 

    $scope.selBGImg = { 
     background : 'url(bgimgs/bg.jpg)' 
    }; 
}); 

我用來設置背景圖片在CSS和它的工作。使用ng樣式後,圖像可以顯示,但所有其他樣式都消失了。任何想法?

回答

2

變化的背景爲 '背景圖片': 'URL(bgimgs/bg.jpg)'

var mlwcApp = angular.module('mlwcApp', []) 
 
.controller('BgImagesListController', function($scope, $http) { 
 
    $scope.selBGImg = { 
 
     'background-image' : 'url(https://wiki.teamfortress.com/w/images/thumb/e/ec/Das_Naggenvatcher.png/250px-Das_Naggenvatcher.png)' 
 
    }; 
 

 
})
[id="bg"] { 
 
    background: center center fixed transparent; 
 
    -webkit-background-size: contain; 
 
    -moz-background-size: contain; 
 
    -o-background-size: contain; 
 
    background-size:contain; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<body id="bg" ng-app="mlwcApp" ng-controller="BgImagesListController" ng-style="selBGImg"> 
 
    
 
</body>

+0

它的工作原理!謝謝,但爲什麼background-image在這裏工作? –

+0

,因爲你重寫了背景屬性,在這裏你只改變背景圖像。 – vivid

+0

我現在明白了,再次感謝您! –