为什么我不能用ng-style设置元素的高度?

use*_*513 3 angularjs angularjs-directive angularjs-scope angularjs-ng-repeat

我试图添加动态设置a的高度div,但它没有成功设置.我得到窗口的高度并将其除以3,但它不起作用.这是我设置高度的地方:

<div id="wrapper" ng-style="height :hgt+'px'">
Run Code Online (Sandbox Code Playgroud)

我正在设置范围变量,如下所示:

 $scope.hgt = $window.innerHeight / 3;
Run Code Online (Sandbox Code Playgroud)

但是没有设定高度.

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

Rya*_*ler 8

使用ng-style方式略有反直觉.您正在尝试使用它来插值,但是根据Angular文档, ng-style它会使用一个表达式",该表达式将导致一个对象,其键是CSS样式名称,值是这些CSS键的对应值."

因此,您可能想尝试:

$scope.hgt = { height: ($window.innerHeight / 3) + 'px' };
<div id="wrapper" ng-style="hgt">
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!


Reb*_*nix 6

你应该把字典放在ng-style下面

<div id="wrapper" ng-style="{height: '{{hgt}}px'}">
  <h4 class="headerTitle">tell Mother name</h4>
</div>
Run Code Online (Sandbox Code Playgroud)