我有一个十六进制颜色,例如#F4F8FB(或rgb(244, 248, 251))我想要转换成尽可能透明的 rgba颜色(当显示为白色时).合理?我正在寻找一种算法,或者至少想一个算法来解决这个问题.
例如:
rgb( 128, 128, 255 ) --> rgba( 0, 0, 255, .5 )
rgb( 152, 177, 202 ) --> rgba( 50, 100, 150, .5 ) // can be better(lower alpha)
Run Code Online (Sandbox Code Playgroud)
想法?
基于Guffa答案的FYI解决方案:
function RGBtoRGBA(r, g, b){
if((g == null) && (typeof r === 'string')){
var hex = r.replace(/^\s*#|\s*$/g, '');
if(hex.length === 3){
hex = hex.replace(/(.)/g, '$1$1');
}
r = parseInt(hex.substr(0, 2), 16);
g = parseInt(hex.substr(2, 2), 16);
b = parseInt(hex.substr(4, 2), …Run Code Online (Sandbox Code Playgroud) 我不明白为什么,但插入的盒子阴影在我的内容之下.
这是一个例子:
div {
box-shadow:inset 0 0 10px black;
height:300px;
color:red;
}Run Code Online (Sandbox Code Playgroud)
<div>
a
</div>Run Code Online (Sandbox Code Playgroud)
你看到它a位于盒子阴影的顶部.
如何让盒子阴影位于a?