1 分钟认识新属性 accent-color —— 修改 input 默认控件颜色

简介: 1 分钟认识新属性 accent-color —— 修改 input 默认控件颜色

accent-color



accent-color 是 CSS 2022 年推出的一个新属性;

总所周知,CSS 属性不要太花里胡哨,而兼容性是我们给予关注的基础;

accent-color 相比于其它新属性,它有不错的兼容性;


image.png


那,到底,它是干嘛吃的?


说白了,就是标题中的一句话,它能修改 input 默认控件的颜色。

目前支持下面这些 input 控件元素:

  • 复选框 <input type=”checkbox”>

code.juejin.cn/pen/7173593…

  • 单选框 <input type=”radio”>

code.juejin.cn/pen/7173594…

  • 范围选择框 <input type=”range”>

code.juejin.cn/pen/7173594…

  • 进度条 <progress>

code.juejin.cn/pen/7173593…


在之前,当我们想要更改这些控件的颜色时,可能需要自定义控件,或者借助复杂的第三方库。现在,有了 accent-color ,可以直接设置颜色,让默认组件也不再单调。在黑暗模式下,也能适配。


除了以上这 4 种默认控件,你可能也想试试其它 input 控件的设置效果:


<input type="date">
<input type="number" min=0 max=10 value=0>
<input type="text" list="animals" placeholder="Animals">
<input type="search" list="animals" placeholder="Search...">
<details>
  <summary>Details</summary>
  <p>Peek-a-boo</p>
</details>
<ul>
  <li>This</li>
  <li>Is</li>
  <li>A</li>
  <li>List</li>
</ul>
<datalist id="animals">
  <option>Dog</option>
  <option>Cat</option>
  <option>Spider</option>
</datalist>
html {  
--brand: hotpink;  
scrollbar-color: hotpink Canvas;  
}  
:root { accent-color: var(--brand); }  
:focus-visible { outline-color: var(--brand); }  
::selection { background-color: var(--brand); }  
::marker { color: var(--brand); }  
:is(  
::-webkit-calendar-picker-indicator,  
::-webkit-clear-button,  
::-webkit-inner-spin-button,  
::-webkit-outer-spin-button  
) {  
color: var(--brand);  
}


在 chrome 浏览器下表现正常,但并不完全支持其它浏览器。

code.juejin.cn/pen/7173597…

也许后续会有更多支持,比如 option ~~ 尽情期待~

OK,虽然这只是一个小小的 CSS 新属性,但我们知道,CSS 的应用就是重在积累。


image.png


阶段小结



本月编写或翻译了一系列关于 CSS 的小知识,很多也是自己一边在吸取学习,一边在向外输出。

image.png


本瓜意识到了:


CSS 能玩的花活是真滴多!

作为前端开发者,不能放弃 CSS 这有趣又有用的能力!

CSS 重在积累,即使是一个很小的、新的特性,也值得探究实践!


相关文章
|
存储 Android开发
解决了一个大家都有可能遇到的奇葩权限问题
解决了一个大家都有可能遇到的奇葩权限问题
解决了一个大家都有可能遇到的奇葩权限问题
|
SQL 存储 NoSQL
实时计算 Flink版产品使用合集之使用ParameterTool.fromArgs(args)解析参数为null,该怎么处理
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
318 2
|
监控 Java 开发者
什么是 Spring Boot?
什么是 Spring Boot?
2725 6
|
Docker 容器
解决docker启动logstash失败的问题(可能原因)
解决docker启动logstash失败的问题(可能原因)
526 0
|
Java Android开发
解决AGP升级到8.0后编译报错kaptGenerateStubsDebugKotlin
解决AGP升级到8.0后编译报错kaptGenerateStubsDebugKotlin
1449 0
|
SQL 关系型数据库 MySQL
一文搞懂数据库中的“锁”(图文详解)
数据库锁机制包括全局锁、表级锁和行级锁,用于管理并发访问数据时的一致性和有效性。全局锁锁定整个数据库实例,确保数据备份时的一致性,但可能导致长时间业务停摆。表级锁分为读锁和写锁,读锁允许多个并发读,写锁阻止其他读写。元数据锁(MDL)自动控制,防止DML和DDL冲突。行级锁是最细粒度的锁,分共享锁(读)和排他锁(写),防止行级别的并发冲突。InnoDB还使用意向锁和间隙锁/临键锁防止幻读,提高并发性能。
3096 2
一文搞懂数据库中的“锁”(图文详解)
|
API 开发工具 Android开发
调用Android原生@SystemApi、@Hide方法
调用Android原生@SystemApi、@Hide方法
1088 1
|
安全 网络安全
anywhere 无法正常使用的问题--IP地址解析
anywhere 无法正常使用的问题--IP地址解析
263 0
|
存储 Java Linux
Android系统获取event事件回调等几种实现和原理分析
Android系统获取event事件回调等几种实现和原理分析
1252 0
|
存储 SQL 数据管理
阿里云数据库 SelectDB 内核 Apache Doris 如何基于自增列满足高效字典编码等典型场景需求|Deep Dive 系列
自增列的实现,使得 Apache Doris 可以在处理大规模时展示出更高的稳定性和可靠性。通过自增列,用户能够高效进行字典编码,显著提升了字符串精确去重以及查询的性能。使用自增列作为主键来存储明细数据,可以完美的解决明细数据更新的问题。同时,基于自增列,用户可以实现高效的分页机制,轻松应对深分页场景,有效过滤掉大量非必需数据,从而减轻数据库的负载压力,为用户带来了更加流畅和高效的数据处理体验。
695 0