JSFiddle - React, Tailwind, and code Playground

HTML

<body>
          <pre class="indent-8">
            <code>
              function createCORSRequest(method, url) {
                var request = new XMLHttpRequest();
                if ('withCredentials' in request) {
                  request.open(method, url, true);
                } else if (typeof XDomainRequest != 'undefined') {
                  request = new XDomainRequest();
                  request.open(method, url);
                } else {
                  request = null;
                }
                return request;
              }

              function makeflair(data,site) {
                document.getElementById('flair-'+site+'-user-badge-count-bronze').innerHTML = data[0];
                document.getElementById('flair-'+site+'-user-badge-count-silver').innerHTML = data[1];
                document.getElementById('flair-'+site+'-user-badge-count-gold').innerHTML = data[2];
                // If a user is a moderator, add the diamond ♦ symbol
                var symbol = '';
                if (data[8] == 'moderator') {
                  symbol = '&#9830';
                }
                document.getElementById('flair-'+site+'-user-display-name').innerHTML = data[3] + ' ' + symbol;
                document.getElementById('flair-'+site+'-user-display-image').src = data[4];
                document.getElementById('flair-'+site+'-user-reputation').innerHTML = data[5];
                document.getElementById('flair-'+site+'-user-profile-link').href = data[7] + '/users/' + data[6];
                document.getElementById('flair-'+site+'-in-here').className = 'w3-padding-ver-16 w3-theme-l4 flair-'+site+'-div';
                // Currently SE has a weird system for naming favicons: http://meta.stackexchange.com//280163
                if (site == 'meta') {
                  document.getElementById('flair-'+site+'-site-display-image').src = 'https://cdn.sstatic.net/Sites/stackexchange'+site+'/img/favicon.ico';
                } else {
          ...

JavaScript

function removeLeadingWhitespace(indent) {
  // Get a list of all elements that need indent removed by indent value (will have class `indent-X`)
  // List may be 0 long - loop simply doesn't run
  var preElements = document.getElementsByClassName('w3-margin-ver-16 indent-'+indent);
  for (i = 0; i < preElements.length; i++) {
    preElements[i].innerHTML = preElements[i].innerHTML.split('\n'+' '.repeat(indent)).join('\n').split('\n'+' '.repeat(indent-2)+'</code>').join('</code>').split("\n").slice(1,-1).join("\n");
    //split('\n'+' '.repeat(indent)).join('\n') -- Split at every newline followed by X spaces. Then join together with the newlines.
    // .split('\n'+' '.repeat(indent-2)+'</code>').join('</code>') -- The lastline will have 2 less spaces, so remove those, and the newline at the end. Add the tag back in.
    //.split("\n").slice(1,-1).join("\n"); -- Remove the first and last lines.
  }
}

function removeLeadingWhitespaces() {
  // Loop over all indents, 2 to 40
  for (indent = 2; indent <= 40; indent+=2) {
    removeLeadingWhitespace(indent);
  }
}