1.4 KiB
1.4 KiB
实现方案 —— 2026-04-19-00-13-20
方案目标
使打印/PDF导出时 .field-value 的下划线紧贴文字底部。
修改点
修改文件:src/utils/print.ts
在 @media print 的 .smart-field-wrapper .field-value 样式中增加 line-height: 1 !important;。
原因:即使 padding-bottom 已设为 0px,父级文档的 line-height: 1.5 仍会在文字下方保留不可见的行高留白。通过强制压缩行高到 1,可以消除底部留白,使 border-bottom 紧贴文字。
@media print {
.smart-field-wrapper .field-value {
outline: none !important;
box-shadow: none !important;
border: none !important;
border-bottom: 1px solid #000 !important;
border-radius: 0 !important;
background: transparent !important;
padding: 0 2px 0px 2px !important;
line-height: 1 !important;
}
.smart-field-wrapper .field-value.no-underline { border-bottom: none !important; }
}
涉及文件及修改点
| 文件 | 修改点 |
|---|---|
src/utils/print.ts |
@media print 中 .field-value 增加 line-height: 1 !important |
风险与注意事项
line-height: 1会显著压缩行高,但由于.field-value在打印时已经是inline-block且独立显示,不会影响周围段落的整体行距。!important确保优先级高于任何内联样式。