JSFiddle - React, Tailwind, and code Playground

HTML

<ul>
    <li>
    </li>
</ul>

<p>Test</p>

<textarea>Sample</textarea>

JavaScript

var html = $('body').html();

    // We make a fake html
    var newHtml = document.createElement('html');
    var frag = document.createDocumentFragment();
    newHtml.innerHTML = html;
    frag.appendChild(newHtml);

    var elements = newHtml.getElementsByTagName("*");
    
    // Remove the emptys elements
    for (var i = 0; i < elements.length; i++) {
        if( elements[i].textContent.trim() === '' )
            elements[i].parentNode.removeChild(elements[i]);
    }

    html = newHtml.innerHTML;

console.log(html);