JSFiddle - React, Tailwind, and code Playground
by kougiland
HTML
<ul id="color_picker">
<li>
<span>Red</span>
<input type="range" value="50" id="r" name="points" min="0" onchange="r_value.value=value" max="255">
<output id="r_value">50</output>
</li>
<li>
<span>Green</span>
<input type="range" value="150" id="g" name="points" min="0" onchange="g_value.value=value" max="255">
<output id="g_value">150</output>
</li>
<li>
<span>Blue</span>
<input type="range" value="250" id="b" name="points" min="0" onchange="b_value.value=value" max="255">
<output id="b_value">250</output>
</li>
</ul>
CSS
html, body {
height: 300px;
width: 100%;
margin: 0; padding: 0;
}
li {
margin: 20px 0;
}
li input {width: 255px;}
#color_picker {
margin: 50px auto;
width: 430px;
padding: 10px 40px;
background: rgba(0,0,0,0.2);
border-radius: 5px;
box-shadow: inset 0px 1px 2px 0px rgba(0,0,0,0.4);
list-style: none;
}
output, span {
height: 30px;
width: 80px;
background: rgba(255,255,255,0.5);
padding: 6px 12px;
font-size: 12px;
text-align: center;
border-radius: 5px;
font-family: Arial, sans-serif;
position: relative;
top: -7px;
margin-left: 20px;
}
span {
margin-left: 0;
width: 50px;
margin-right: 20px;
height: 16px;
display: inline-block;
}
JavaScript
(function() {
function setBgColor() {
var r = document.getElementById('r').value;
var g = document.getElementById('g').value;
var b = document.getElementById('b').value;
document
.getElementsByTagName('body')[0]
.style
.backgroundColor = 'rgb('+r+', '+g+', '+b+')';
}
setBgColor();
var input_list = document.getElementsByTagName('input');
for (var i = 0; i < input_list.length; i++) {
input_list[i]
.addEventListener('change', setBgColor, false);
}
})();