JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.2.61/jspdf.debug.js"></script>
<!-- <script src="https://niklasvh.github.io/html2canvas/dist/html2canvas.js"></script> -->

<button id="downloadpdf" xhref="#">Download as pdf</button>

<div id="id">
  <h1>
    Header
    <hr/>
  </h1>
  <ul>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
  </ul>
  <h2>
    Header 2
  </h2>
  <ul>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
    <li>test</li>
  </ul>
  <h2>test3</h2>
  <ul>
    <li>test1</li>
    <li>test2</li>
    <li>test3</li>
      <li>test4</li>
    <li>test5</li>
    <li>test6</li>
      <li>test7</li>
    <li>test8</li>
      <li>test</li>
    <li>test</li>
    <li>test0</li>
      <li>test</li>
    <li>test</li>
    <li>test1</li>
      <li>test</li>
    <li>test</li>
    <li>test2</li>
  </ul>
  
  
</div>

JavaScript

/**
 *    Ken Fyrstenberg Nilsen
 *    Abidas Software
 */

function savePDF() {

 
	var 	margins = { 
       top: 10, 
       bottom: 10, 
       left: 10, 
       width: 277 
     }; 

  var pdf = new jsPDF('p', 'pt', 'a4');
  
  var namefile = prompt("insert name of file");
  
  /*
  pdf.addHTML(document.getElementById('id'), margins.left, margins.top, { 'width': margins.width }, function(){
  console.log('added',arguments)
    pdf.save(namefile + ".pdf");
  }, margins);
*/
  
  pdf.fromHTML(document.getElementById('id'), margins.left, margins.top, { 'width': margins.width }, function(dispose){
    pdf.save(namefile + ".pdf");
  }, margins);

}

document.getElementById('downloadpdf').addEventListener('click', savePDF, false);