使用 可直接调用系统颜色选择器并返回标准十六进制值(如 #4a90e2);支持设置默认色、监听 change 事件获取颜色,但不支持透明度且样式定制有限,高级需求需结合 canvas 实现。

直接用 <input type="color"> 就能实现网页颜色拾取,浏览器会自动调出系统级颜色选择器,用户选完后返回标准十六进制值(如 #4a90e2)。
基础用法与默认设置
只需一行 HTML 即可启用:
-
<input type="color" id="picker">—— 浏览器识别后渲染为带色块的按钮 - 添加
value属性设定默认颜色,例如value="#ff6b6b"(必须是6位小写十六进制) - 未设 value 时,默认为
#000000(纯黑)
获取并应用选中的颜色
通过 JavaScript 监听 change 事件实时读取和使用颜色值:
- 用
document.getElementById('picker').value获取当前颜色字符串 - 可直接赋给样式属性,比如
element.style.backgroundColor = color - 支持多种 CSS 颜色属性:背景、文字、边框、阴影等
注意事项与限制
这个原生控件虽简单,但有几个关键点需留意:
- 不支持透明度(alpha),
#rrggbbaa或rgba()无法直接输入或返回 - 样式高度受限,只能调整尺寸、边框、圆角等基础外观,无法重绘调色板
- Safari 早期版本兼容性较弱,建议测试实际目标环境
- 返回值恒为小写格式(如
#ff0000),服务端或逻辑中无需额外转写
需要更高级功能怎么办
若要从图片吸色、显示 RGB/HSV 多格式、支持透明度或自定义布局,就得结合 Canvas:
- 将图片或渐变绘制到
<canvas></canvas>上 - 监听点击或悬停,用
ctx.getImageData(x, y, 1, 1)读取 RGBA 像素值 - 再通过 JS 转换格式、更新界面、同步 input 值等
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











