我可以在浏览器中找出配色方案吗
Can I find out the color scheme in the browser
因为可以查明 PC 是否处于暗模式,所以我想知道是否可以查明用户使用了哪种 colorschemer,例如黄、绿、橙、蓝、紫、紫?因为我想建立一个根据配色方案集进行自适应的网页,最好是准确的颜色值。
Google Chrome Color Settings
根据规范,您可以使用 system colors。例如,系统默认背景为Canvas
,您可以这样使用:background-color: Canvas
.
支持并不总是很好,但这正是您所需要的。
或者,您也可以查看 user-agent 样式表(浏览器默认值)。例如 the one for safari 定义了一些 CSS 变量,例如 -apple-system-opaque-secondary-fill
或 -webkit-control-background
.
有关所有这一切的更多信息,请查看 great article
如果你需要在CSS中获取这些颜色的值,你总是可以这样破解:
function getRgbForColorName(name) {
const d = document.createElement("div")
d.style.color = name
document.body.appendChild(d)
const rgb = window.getComputedStyle(d).color
document.body.removeChild(d)
return rgb
}
console.log('Canvas:', getRgbForColorName('Canvas'))
console.log('Highlight:', getRgbForColorName('Highlight'))
可能有更简洁的方法来执行此操作。这只是一个proof-of-concept。看到这个答案:Javascript function to convert color names to hex codes.
在 MacOS 上,用户可以设置的“颜色”是 SelectedItem
,Chrome 无法识别。
因为可以查明 PC 是否处于暗模式,所以我想知道是否可以查明用户使用了哪种 colorschemer,例如黄、绿、橙、蓝、紫、紫?因为我想建立一个根据配色方案集进行自适应的网页,最好是准确的颜色值。
Google Chrome Color Settings
根据规范,您可以使用 system colors。例如,系统默认背景为Canvas
,您可以这样使用:background-color: Canvas
.
支持并不总是很好,但这正是您所需要的。
或者,您也可以查看 user-agent 样式表(浏览器默认值)。例如 the one for safari 定义了一些 CSS 变量,例如 -apple-system-opaque-secondary-fill
或 -webkit-control-background
.
有关所有这一切的更多信息,请查看 great article
如果你需要在CSS中获取这些颜色的值,你总是可以这样破解:
function getRgbForColorName(name) {
const d = document.createElement("div")
d.style.color = name
document.body.appendChild(d)
const rgb = window.getComputedStyle(d).color
document.body.removeChild(d)
return rgb
}
console.log('Canvas:', getRgbForColorName('Canvas'))
console.log('Highlight:', getRgbForColorName('Highlight'))
可能有更简洁的方法来执行此操作。这只是一个proof-of-concept。看到这个答案:Javascript function to convert color names to hex codes.
在 MacOS 上,用户可以设置的“颜色”是 SelectedItem
,Chrome 无法识别。