html2canvas 这个生成图片的时候没有边框样式
时间: 2023-07-05 13:27:29 浏览: 167
使用 html2canvas 生成的图片没有边框样式是因为 html2canvas 只会截取目标元素的内容,不会复制它的样式。如果想要在生成的图片中包含边框样式,需要手动添加边框元素并在其上绘制边框。
具体操作方法如下:
1. 在目标元素的外部包裹一个 div 容器,并给它设置与目标元素相同的宽高和边框样式;
2. 将目标元素添加到这个 div 容器中;
3. 使用 html2canvas 生成 div 容器的截图,这样就能够在生成的图片中包含边框样式了。
下面是示例代码:
```html
<div id="container" style="position: relative; width: 400px; height: 300px; border: 1px solid red;">
<div id="target" style="position: absolute; top: 10px; left: 10px; width: 380px; height: 280px;">
<!-- 目标元素的内容 -->
</div>
</div>
<script src="https://html2canvas.hertzen.com/dist/html2canvas.min.js"></script>
<script>
html2canvas(document.querySelector('#container')).then(canvas => {
document.body.appendChild(canvas)
})
</script>
```
这样生成的 canvas 就包含了边框样式。
阅读全文