# 实现方案 —— 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` 紧贴文字。 ```css @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 | ## 风险与注意事项 1. `line-height: 1` 会显著压缩行高,但由于 `.field-value` 在打印时已经是 `inline-block` 且独立显示,不会影响周围段落的整体行距。 2. `!important` 确保优先级高于任何内联样式。