跳转到内容

不支持的 CSS 特性与变通方案

writeHtml 引擎会通过一次正向遍历来渲染内容,绝不会对已经渲染过的内容重新排版。有些 CSS 行为并不适合这一模型。本页列出引擎不会应用的具体行为,并为每一项给出受支持的变通方案。关于各模块的逐项验证状态,请参阅 CSS 支持矩阵

这些限制范围明确,并不是路线图。每个条目都准确指出不支持的具体行为,而不是否定整个属性。

行为不会应用的部分变通方案
position: absolute / position: relative 偏移布局引擎会按文档顺序放置盒子。那些会把已定位盒子移出正常流的 top/right/bottom/left 偏移不会被应用。静态定位可正常工作。在正常流中使用表格或 flex 布局。
具名 grid-template-areas引擎不实现按具名网格区域放置项目。基于显式网格线的放置可正常工作。使用显式网格线放置项目,或改用表格。
跨页断点的 rowspan(降级)rowspan 单元格会在一页内渲染。当表格分页时,跨越页面边界的跨行单元格会按架构决策记录(ADR-007)所述进行分片;而过高且无法拆分的单元格会引发 UnsplittableContentException对于分页期间必须保持完整的成组行,请改用浮动行或类别表头行,而不要使用很高的 rowspan
overflow: hidden 的背景绘制顺序overflow: hidden 不会改变背景的绘制顺序,也不会将子元素的背景裁剪到祖先元素带圆角或带尺寸的盒子内。将背景应用到执行该裁剪的元素上,或不要依赖被裁剪的背景。
flex 项目内并排换行的正文文本包含可换行正文文本的 flex 项目会溢出其轨道,而不是在轨道内换行。改用带显式像素列宽的两列表格。
解析为零的百分比列宽%width 没有可解析的基准时,它会被解析为 0,并触发列挤压警告。为并排的各列指定显式像素宽度。