javascript - 使用javascript设置径向渐变

标签 javascript css

我正在尝试使用 JS 将径向渐变设置为 div 作为背景。我希望渐变从中间开始,不透明度为 0.8,随着它进一步向边缘延伸,不透明度变为 0,从而产生柔和的渐变效果。我尝试了一些东西,但有些根本不起作用,有些则没有我希望的那么好。

当我尝试将它应用于许多 rgba 定义并将不透明度降低 0.1 级时,我尝试使用它,但效果不是很好:

arrCircleDivs[i].firstChild.style.backgroundImage = 
    '-webkit-radial-gradient(center,rgba('+r+','+g+','+b+',0.8),
    rgba('+r+','+g+','+b+',0.8),rgba('+r+','+g+','+b+',0.8),rgba('+r+','+g+','+b+',0.7),rgba('+r+','+g+','+b+',0.6),rgba('+r+','+g+','+b+',0.5),rgba('+r+','+g+','+b+',0.4),
    rgba('+r+','+g+','+b+',0.3),rgba('+r+','+g+','+b+',0.2),
    rgba('+r+','+g+','+b+',0.1),rgba('+r+','+g+','+b+',0))';

而这些根本不起作用:

arrCircleDivs[i].firstChild.style.backgroundImage = '-webkit-radial-gradient
    (center, circle cover, rgba(30,87,153,0.7) 0%,rgba(30,87,153,0) 100%);

arrCircleDivs[i].firstChild.style.backgroundImage = '-webkit-gradient
    (radial, center center, 0px, center center, 100%, color-stop(0%,rgba(30,87,153,0.7)), 
    color-stop(100%,rgba(30,87,153,0)));

我收到以下错误信息:

未捕获的语法错误:意外的 token 非法

那么有没有办法用JS设置这样的效果呢?

最佳答案

我发现这样做的唯一方法是使用 element.style=backgroundVar 并在您的 backgroundVar 中将其设置为 background:...

E.G

let bg = `background:radial-gradient(circle at 0% 0%, 
                rgba(255,0,0,1), rgba(255,0,0,0) 75%), 
            radial-gradient(circle at 0% 100%, 
                rgba(0,0,255,1), rgba(0,0,255,0) 75%), 
            radial-gradient(circle at 100% 0%, 
                rgba(255,255,0,1), rgba(255,255,0,0) 75%),
            radial-gradient(circle at 100% 100%, 
                rgba(0,255,0,1), rgba(0,255,0,0) 75%);`

        document.getElementById("background").style = bg;

关于javascript - 使用javascript设置径向渐变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27297824/

相关文章:

html - CSS 如何使 div 100% 尽管 80% div

css - Wordpress 联系表 7 下拉菜单样式问题

c# - CSS - 在单个 DIV 中并排放置元素,对齐

javascript - 按类 id 隐藏 div

javascript - React 如何在调用 onSubmit 时绑定(bind)到组件

javascript - 使用原型(prototype)在 javascript 中反转字符串

javascript - setInterval 会导致浏览器挂起吗?

css - 重叠DIV

css - 在将元素保持在正常文档流中的同时具有绝对定位的技术?

javascript - jqPlot 中每个值的固定最小宽度