如何去除Odoo 18 QWeb报表中的多余空格?
解决Odoo 18 QWeb报表继承视图多余空格问题
排查与解决方法
替换继承视图的目标节点
找到原继承视图中产生空格的对应节点,在自定义继承视图里用position="replace"完全覆盖该节点,确保新节点无多余空格或换行。示例:<xpath expr="//div[contains(@class, 'prescription-area')]" position="replace"> <div class="prescription-area"> <h3>Prescription</h3> </div> </xpath>用CSS强制消除间距
如果空格来自继承的样式边距,直接在报表的<style>标签中添加覆盖样式:.prescription-area h3 { margin-top: 0 !important; padding-top: 0 !important; } .prescription-area > *:first-child { margin-top: 0; }清理QWeb模板空白字符
Odoo QWeb会保留模板内的空白字符,检查自定义视图代码,删除目标节点周围多余的空格、换行或缩进,甚至可以将代码压缩为一行:<xpath expr="//h3[text()='Prescription']" position="attributes"><attribute name="style">margin-top:0;padding-top:0;</attribute></xpath>定位原视图节点(开发者模式)
开启Odoo开发者模式,找到原报表的XML源码,定位到"Prescription"所在的父节点,确认空格来自空白文本还是样式属性,再针对性处理。
内容的提问来源于stack exchange,提问作者SantoshKumar
相关产品推荐
相关产品推荐

