如何使用 angular 为具有 0-100 渐变的元素设置样式
How to style an element with a gradient from 0-100 using angular
我正在使用 angular 创建一个带有 ng-repeat 的列表。我想为每个列表项的背景设置渐变样式。我的对象中有一个值,它是 0-100 之间的一个数字,我想根据该数字设置背景渐变的样式。查看此 fiddle 以了解我的问题的基本示例。
更新:
我刚刚意识到第一个 fiddle 使用的是 angular 1.0,这对我没用。我使用更相关的 angular 1.3 重新制作了 fiddle。然而,可接受的答案不再适用于此版本的 angular。有什么建议么?这是新的 fiddle
这是一个简单的对象
$scope.list = [
{x:1,y:70},
{x:2,y:80},
{x:3,y:90},
{x:4,y:100}
]
我希望我的列表项的背景是 $scope.y 值的渐变。我确信这可以使用 ng-style 但我似乎无法弄清楚,所以非常感谢任何帮助。
试试这个,我已经在你的代码中试过了,它正在工作:
<span style="{{ 'background-image: linear-gradient(to bottom, rgba(255,255,255,0)' + x.x +'%, rgba(41,137,216,1)' + x.y + '%)' }}">Works now too.</span>
只为简化
<li class="list-group-item" style="background-image: linear-gradient(to bottom, red {{x.x}}%, blue {{x.y}}%)" ng-repeat="x in list">{{ x.x }}
<span class="pull-right">{{ x.y }}</span>
</li>
我正在使用 angular 创建一个带有 ng-repeat 的列表。我想为每个列表项的背景设置渐变样式。我的对象中有一个值,它是 0-100 之间的一个数字,我想根据该数字设置背景渐变的样式。查看此 fiddle 以了解我的问题的基本示例。
更新:
我刚刚意识到第一个 fiddle 使用的是 angular 1.0,这对我没用。我使用更相关的 angular 1.3 重新制作了 fiddle。然而,可接受的答案不再适用于此版本的 angular。有什么建议么?这是新的 fiddle
这是一个简单的对象
$scope.list = [
{x:1,y:70},
{x:2,y:80},
{x:3,y:90},
{x:4,y:100}
]
我希望我的列表项的背景是 $scope.y 值的渐变。我确信这可以使用 ng-style 但我似乎无法弄清楚,所以非常感谢任何帮助。
试试这个,我已经在你的代码中试过了,它正在工作:
<span style="{{ 'background-image: linear-gradient(to bottom, rgba(255,255,255,0)' + x.x +'%, rgba(41,137,216,1)' + x.y + '%)' }}">Works now too.</span>
只为简化
<li class="list-group-item" style="background-image: linear-gradient(to bottom, red {{x.x}}%, blue {{x.y}}%)" ng-repeat="x in list">{{ x.x }}
<span class="pull-right">{{ x.y }}</span>
</li>