当前位置: 首页 > news >正文

css使用 :where() 来简化大型 CSS 选择器列表

使用 :where() 来简化大型 CSS 选择器列表

where() 是 CSS 中的一个非常有用的伪类函数,它属于 CSS Selectors Level 4 规范

:where(selector1, selector2, selector3, ...) {/* 样式规则 */
}
  1. 零特异性(Zero Specificity)
    这是 where() 最重要的特性。它自身不会增加选择器的特异性权重。

  2. 简化复杂选择器
    可以帮助简化嵌套较深的选择器。

/* 传统写法 */
nav ul li a,
aside ul li a,
footer ul li a {color: #333;
}/* 使用 :where() */
:where(nav, aside, footer) ul li a {color: #333;
}
  1. 易于覆盖样式
    由于零特异性,使用 :where() 的样式很容易被覆盖。
css
/* 基础样式 - 易于覆盖 */
:where(.card, .panel, .widget) {padding: 1rem;border: 1px solid #ccc;
}/* 可以轻松覆盖 */
.card {padding: 2rem; /* 这个样式会生效 */
}
/* 使用 :where 重置多个容器的内部元素间距 */
:where(.post, .sidebar, .card) :where(h1, h2, h3, h4, h5, h6) {margin-top: 0;margin-bottom: 0.5em;
}:where(.post, .sidebar, .card) :where(ul, ol) {padding-left: 1.5em;
}:where(.post, .sidebar, .card) :where(p) {line-height: 1.6;margin-bottom: 1em;
}
/* 组件基础样式(易于覆盖) */
.my-component :where(.title, .heading) {font-size: 1.2rem;margin-bottom: 1rem;
}.my-component :where(.button, .btn) {padding: 0.5rem 1rem;background: #007bff;color: white;
}/* 用户可以轻松自定义 */
.my-component .title {font-size: 1.5rem; /* 这个会生效 */
}
/* 移动端优化 */
@media (max-width: 768px) {:where(nav, header, footer) {padding: 0.5rem;}:where(.card, .article, .sidebar) {margin-bottom: 1rem;}
}

当您需要编写基础样式、重置样式或希望样式容易被覆盖时,:where() 是最佳选择。

See the Pen css`:where()` by liu874396180 ( @liu874396180) on CodePen.
http://www.dtcms.com/a/505001.html

相关文章:

  • 海报在线制作免费网站创办网站公司
  • 网站建设服务商怎么收费wordpress主题著作权
  • ResponseEntity - Spring框架的“标准回复模板“
  • 京东网站开发费用济南市住房和城乡建设局网站
  • 赛车网站开发做a的视频在线观看网站
  • 如何替换网站ico图标做网站需要哪些技能
  • mysql基础【事务】
  • 网络前端开发招聘搜索引擎优化报告
  • 龙岗网站建设推广报价广西桂林为什么穷
  • 网站开发学什么数据库龙海市城乡规划建设局网站
  • 烟台网站建设技术支持wordpress多媒体导入
  • 网站做跳转怎么做菏泽 网站建设
  • 06数据采集:Prometheus的基本介绍、架构与组件
  • 商城网站建设协议软件开发公司规章制度
  • 执业医师变更注册网站跨境电商运营平台
  • 门头沟做网站公司国内建网站流程
  • 北京网站制作郑州电子商务网站建设需要知识
  • RK3568学习笔记
  • 大规模网站开发语言微信小程序可以自己开发吗
  • wordpress 导出用户天津seo网络营销
  • 【数据结构与算法基础】05. 栈详解(C++ 实战)
  • 做网站要有什么团队雨发建设集团有限公司网站
  • seo建站优化asp.net+mvc+网站开发
  • 网站图片一般分辨率做多大赣州网站建设服务
  • 2017招远网站建设云兰装潢公司总部地址电话
  • 网站服务器查询工具wordpress 返回顶部插件
  • 做网站推广弊端青岛胶南做网站的
  • 2018年网站建设工作总结北京市建设工程信息网登录流程
  • 网站首页背景代码旅游类网站开发毕业设计
  • 9 垂直分片