vue使用html2Canvas导出图片 input文字向上偏移

vue使用html2Canvas导出图片 input文字向上偏移

图中 用的是element的输入框 行高 32px,经常测试 你使用原生的input 还是会出现偏移。

解决方法:修改css样式

1.怎么实现导出 网上随便找很多

2.在第一步 获取你要导出的元素id 克隆后 修改他的样式或者 你直接在你需要打印的页面全局修改样式

3.主要是重置字体的行高,我这里输入框高度是32px 固定的 ,那就使用line-height 和 padding-top 来让他文字居中

复制代码
const cloneDom = document.getElementById(content).cloneNode(true)
        document.getElementsByTagName('body')[0].appendChild(cloneDom)
        cloneDom.querySelectorAll('input').forEach(input => {
          input.style.height = '32px'
          input.style.lineHeight = '14px'
          input.style.paddingTop = '6px'
        })

效果 差不多 能居中了 完美解决

相关推荐
pe7er12 小时前
window管理开发环境篇 - 持续更新
前端·后端
We་ct13 小时前
LeetCode 5. 最长回文子串:DP + 中心扩展
前端·javascript·算法·leetcode·typescript
陈随易17 小时前
有生之年系列,Nodejs进程管理pm2 v7.0发布
前端·后端·程序员
冰暮流星18 小时前
javascript之事件代理/事件委托
前端
@yanyu66618 小时前
登录注册功能-明文
vue.js·springboot
陈随易19 小时前
AI时代,你还在坚持手搓文章吗
前端·后端·程序员
里欧跑得慢21 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒21 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
cn_mengbei1 天前
用React Native开发OpenHarmony应用:Reanimated共享元素过渡
javascript·react native·react.js
kyriewen1 天前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试