角材料:如何更改垫旋转器路径的背景颜色

时间:2019-10-21 19:38:17

标签: css angular angular-material spinner

我创建了一个垫进度微调器,更改了笔触的颜色,但是需要知道如何更改其余笔划路径的CSS

我尝试更改颜色,但更改了笔触颜色。但是我找不到与路径CSS相关的任何内容。我可以看到只有在使用mat-progress-spinner时才会生成圆圈

<mat-progress-spinner [color]="'orange'" [mode]="'determinate'" 
[diameter]="80" strokeWidth="5" [value]=" 70">
</mat-progress-spinner>
.mat-progress-spinner circle, .mat-spinner circle {
    stroke: green;
}

.mat-progress-spinner path, .mat-spinner path {
    stroke: red;
}

例如,在上面的示例中,值是70,那么对于70,它应该映射为橙色,需要帮助,如何显示其余30个值的不同颜色

  • 70-橙色
  • 30-黄色(为此需要解决方案

1 个答案:

答案 0 :(得分:2)

圆是动态创建的,因此您不会找到为剩余部分着色的属性(因为剩余部分根本没有上色,因此我们无法更改其颜色);

但是您可以获得想要的效果……您可以通过以下方式实现:

  • 创建完整圆圈的图像,并将其放置在您的mat-card中...我拍摄了以下紫色图像

enter image description here

  • 接下来,通过mat-spinnerposition:absolute放在此静态图片的顶部

相关的 HTML

<mat-card>
    <mat-card-content>
        <h2 class="example-h2">Result</h2>

        <img src='https://i.stack.imgur.com/aNUGr.png' alt='background'/>

        <mat-progress-spinner class="example-margin" [color]="color" [mode]="mode" [value]="value">
        </mat-progress-spinner>
    </mat-card-content>
</mat-card>

相关的 CSS

mat-progress-spinner{    
  position: absolute;
  top: 56px;
  left: 19px;
}

circle{
  stroke-width: 11%;
}

完成working stackblitz here