@container 规则与断点
编写 @container 规则,在容器达到特定尺寸时应用样式。
@container 规则与断点 是 CoddyKit 上的免费 CSS Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 CSS Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 CSS Academy 课程共包含 4 节课。
@container 规则语法
@container 是一种 at 规则,当容器满足特定大小条件时会应用样式。其语法与媒体查询相似:
<div class="wrapper"><div class="box">Styled once container ≥ 400px wide</div></div>
命名容器查询
定位特定的命名容器:
<div class="sidebar">
<div class="nav-item">Dashboard</div>
<div class="nav-item">Settings</div>
</div>
最大宽度容器查询
使用 max-width 为较小的容器应用样式:
<div class="wrapper"><div class="card">Compact card at narrow widths</div></div>
范围容器查询
现代容器查询语法支持范围:
<div class="wrapper"><div class="card"><span>Icon</span><span>Label</span></div></div>
自适应卡片组件
根据容器宽度进行自适应的卡片组件:
<div class="card-wrapper">
<div class="card">
<div class="card__image"></div>
<div class="card__body">Adaptive card content</div>
</div>
</div>
嵌套容器查询
容器查询可以嵌套。内部查询默认引用最近的容器祖先。
<div class="outer">
<div class="inner">
<div class="content">Nested container-aware content</div>
</div>
</div>
容器查询断点
与视口断点不同,容器断点应根据组件布局何时需要变化来选择,而不是根据任意的设备尺寸。请从组件内容的最小和最大宽度开始。
容器中的排版
调整小型容器中的排版:
<div class="wrapper">
<h3 class="card-title">Adaptive Heading</h3>
<p class="card-text">Body copy that hides on very narrow containers.</p>
</div>
用于网格布局的容器查询
在容器断点处更改组件的内部网格:
<div class="widget">
<div class="widget-grid">
<div>Tile 1</div>
<div>Tile 2</div>
</div>
</div>
样式查询(超越尺寸)
容器查询还支持用于检查计算所得自定义属性值的样式查询。这样,无需额外的类,就可以通过 CSS 变量驱动组件变体:
<div class="wrapper"><div class="card">Featured card styled via style query</div></div>
快速检查
@container (min-width: 500px) 会作用于什么?
回顾
@container 规则会在容器满足尺寸条件时,为容器内的元素应用样式。请使用命名容器来定位特定的祖先元素。容器断点应基于内容需求,而不是设备尺寸。样式查询将容器查询扩展到检查 CSS 变量值,从而实现强大的声明式组件变体。
常见问题解答
「@container 规则与断点」课时是免费的吗?
是的 — 「@container 规则与断点」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 CSS Academy 课程的其余内容,请升级到 CoddyKit PRO。 CSS Academy 课程共包含 4 节课。
「@container 规则与断点」这节课中我会学到什么?
编写 @container 规则,在容器达到特定尺寸时应用样式。 你通过在浏览器中直接运行的动手代码来练习 CSS Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 CSS Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 CSS Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「@container 规则与断点」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 CSS Academy 课中编写并运行代码吗?
能。每节 CSS Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- container-type 与 container-name
- @container 规则与断点
- 容器查询单位:cqw 与 cqh
- 容器查询与媒体查询的区别