2017-08-28 21 views
-2

我发现了一种使用data-html2canvas-ignore =“true”隐藏元素的方法。然而,尽管这个隐藏元素,它仍然留下一个空的空间

var testbutton = document.getElementById("testbutton"); 
 
var content = document.getElementById("content"); 
 
testbutton.onclick = function() { 
 
    html2canvas(content, { 
 
    "onrendered": function(canvas) { 
 
     document.body.appendChild(canvas); 
 
    } 
 
    }); 
 
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.min.js"></script> 
 

 
<p> 
 
    <a id="testbutton" href="javascript:void(0);">test</a> 
 
</p> 
 

 
<div id="content"> 
 
    <div class="element-1">1. Is visible</div> 
 
    <div class="element-2" data-html2canvas-ignore="true">2. No visible</div> 
 
    <div class="element-3">3. Is visible</div> 
 
</div>

有没有办法真正删除元素,这样所产生的渲染图像不会留下空白空间?

回答

0

您是否使用任何框架?如果是的话,你的框架可能有一些html功能或属性来做到这一点。

例如在Angular中,您可以使用*ngIf进行管理。

它会帮助你从你的DOM

+0

的HTML删除空元素需要显示这个div但在图像未显示。这是我的要求。 – Dhaarani

+0

我不太明白,你可能会发送一段代码,以便我可以帮忙吗?我已附上 – Atlas

+0

snippent检查它。在这个例子中没有可见不显示bt空间有 – Dhaarani