【问题标题】:apply linear-gadient to html progress bar based on progress bar color根据进度条颜色将线性渐变应用于 html 进度条
【发布时间】:2018-03-09 17:27:50
【问题描述】:

我有以下代码将线性渐变应用于进度条。

目前它以相同颜色显示渐变rgb(33, 177, 89)

如何保持进度条颜色并对其应用线性渐变?

我正在尝试在第一个进度条上显示渐变,颜色为红色和第二个蓝色。

<div style="color:red;">
  <progress style=background:currentColor max="100" value="85" aria-valuemax="100" aria-valuemin="0" aria-valuenow="75" tabindex="-1">
  </progress>
</div>

<div style="color:blue;">
  <progress style=background:currentColor max="100" value="85" aria-valuemax="100" aria-valuemin="0" aria-valuenow="75" tabindex="-1">
  </progress>
</div>

这是 jsfiddle

https://jsfiddle.net/nick1111/3bLgLr9h/95/

【问题讨论】:

    标签: html css


    【解决方案1】:

    因此,HTML 标记不会像脚本语言那样自然地拉入父数据。您实际上必须定义将根据应用的类更改外观的 CSS 类。

    <style type="text/css">
    
    .row { margin:20px 0; }
    
    progress {
        border: 0;
        background: #eee;
        border-radius: 100px;
    } 
    
    progress::-webkit-progress-bar {
        background: #eee;
        border-radius: 100px;
    }
    
    progress::-webkit-progress-value {
        border-radius: 100px;
        background: linear-gradient(to right, rgba(33, 177, 89, .1), rgba(33, 177, 89, 1));
    }
    
    progress.red::-webkit-progress-value {
        border-radius: 100px;
        background: linear-gradient(to right, rgba(255, 0, 0, .1), rgba(255, 0, 0, 1));
    }
    
    progress.blue::-webkit-progress-value {
        border-radius: 100px;
        background: linear-gradient(to right, rgba(0, 0, 255, .1), rgba(0, 0, 255, 1));
    } 
    

    <div class="row">
        <progress class="red" max="100" value="85" aria-valuemax="100" aria-valuemin="0" aria-valuenow="75" tabindex="-1"></progress>
    </div>
    <div class="row">
        <progress class="blue" max="100" value="85" aria-valuemax="100" aria-valuemin="0" aria-valuenow="75" tabindex="-1"></progress>
    </div>   
    

    【讨论】:

    • 感谢@Michael Stevens。用户可以将颜色作为输入传递,因此它可以是任何东西。我们不能为所有颜色创建类,对吧?有什么方法可以在任何颜色使用选择上应用渐变?
    • 因此您希望用户能够选择任何颜色,然后将该颜色应用于滑块。对吗?
    猜你喜欢
    • 2018-09-18
    • 1970-01-01
    • 2020-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 2015-09-19
    相关资源
    最近更新 更多