You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FlyingSaucer结合OpenPDF生成PDF时flex布局无法正确渲染问题咨询

结论

你使用的9.1.22版本FlyingSaucer(基于OpenPDF的发行版)不支持Flex盒模型。

FlyingSaucer官方的CSS支持范围始终以CSS 2.1规范为核心,仅额外实现了极少部分高频CSS3特性,Flex布局作为CSS3新增的布局模块,目前完全没有被纳入FlyingSaucer的渲染实现,因此你写的display: flex规则会被引擎直接忽略,对应元素会按照默认块级元素的行为渲染,就会出现你碰到的和普通div表现一致的问题。

兼容替代方案

你示例中需要的子元素横向排列效果,可以用CSS2.1兼容的写法实现,修改后的样式参考如下:

.flex-container {
  background-color: DodgerBlue;
  overflow: hidden; /* 解决浮动导致的父容器高度塌陷问题 */
}

.flex-container > div {
  background-color: #f1f1f1;
  margin: 10px;
  padding: 20px;
  font-size: 30px;
  float: left; /* 实现横向排列效果 */
}

如果需要实现类似flex的等宽、垂直对齐等特性,可以改用display: table配合display: table-cell的规则模拟。


内容的提问来源于stack exchange,提问作者zolv

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 09:57:04