我在Chrome中对HTML 5 Date输入进行样式化时遇到了一些困难。
使用标记,如<input type="date" max="2020-06-03" value="2020-06-01">
,在CSS中使用一些背景和字体颜色样式,在Chrome中呈现为:
的数据
我想使右手边的日历图标为白色,这样它就和文本的颜色相匹配了。::-webkit-calendar-picker-indicator
看起来像一个可能的候选者。在此设置背景颜色会改变图标后面的颜色(正如预期的那样)。但是我找不到任何对图标颜色本身有影响的参数。
7条答案
按热度按时间ryhaxcpt1#
另一种方法是将“配色方案”设置为深色。
个字符
FYI:这也会使弹出窗口处于黑暗模式。
mm9b1k5b2#
我已经设法解决了它,现在使用CSS过滤器将黑色反转为白色
字符串
然而,这感觉相当脆弱,远非理想。
0md85ypi3#
Shadow DOM样式设置了一个不能在CSS中交互的
background-image
(除了filter
)。一个选项是替换整个图像,您可以设置任何填充颜色,这种方法将向前兼容,以防Chrome决定以后继承color
的图标颜色,代价是拥有一个“硬编码”图标:字符串
falq053o4#
实际上,您可以使用
filter
属性来获得相当有创意的效果。invert(100%)
将图标变为白色brightness(50%)
使其为灰色sepia(100%)
使其饱和并使其.深褐色saturate(10000%)
将饱和度提升并将其变为亮红色之后,你可以用
hue-rotate
来改变色调。hue-rotate(240deg)
把它变成蓝色,hue-rotate(120deg)
把它变成绿色等等。如果你想得到一个真正特定的颜色,你应该check out this question on how to transform black into any given color using only CSS filters.esbemjvw5#
另一个例子是;
字符串
63lcw9qa6#
我刚刚发现了这个很棒的小提琴。你输入你需要的十六进制颜色,它会给你你的过滤代码。非常实用:https://codepen.io/sosuke/pen/Pjoqqp。
计算它的JavaScript是:
字符串
mzsu5hc07#
字符串