noscript elementhead element of an HTML document, if there are no ancestor noscript elements.noscript elements.head element: in any order, zero or more link elements, zero or more style elements, and zero or more meta elements.head element: transparent, but there must be no noscript element descendants.HTMLElement.The noscript element represents nothing
  if scripting is enabled, and
  represents its children if scripting is disabled. It is used
  to present different markup to user agents that support scripting
  and those that don't support scripting, by affecting how the
  document is parsed.
When used in HTML documents, the allowed content model is as follows:
head element, if scripting is disabled for the
   noscript elementThe noscript element must contain only
   link, style, and meta
   elements.
head element, if scripting is enabled for the
   noscript elementThe noscript element must contain only text,
   except that invoking the HTML fragment parsing
   algorithm  with
   the noscript element as the context element and the
   text contents as the input must result in a
   list of nodes that consists only of link,
   style, and meta elements that would be
   conforming if they were children of the noscript
   element, and no parse
   errors.
head elements, if scripting is disabled for the
   noscript elementThe noscript element's content model is
   transparent, with the additional restriction that a
   noscript element must not have a noscript
   element as an ancestor (that is, noscript can't be
   nested).
head elements, if scripting is enabled for the
   noscript elementThe noscript element must contain only text,
    except that the text must be such that running the following
    algorithm results in a conforming document with no
    noscript elements and no script
    elements, and such that no step in the algorithm causes an
    HTML parser to flag a parse error:
script element from the
     document.noscript element in the
     document. For every noscript element in that list,
     perform the following steps:
      noscript element.noscript element, and call these
       elements the before children.noscript element, and
       call these elements the after children.Text node children of the noscript
       element.innerHTML
       attribute of the parent element to the value
       of s. (This, as a side-effect, causes the
       noscript element to be removed from the
       document.)All these contortions are required because, for
  historical reasons, the noscript element is handled
  differently by the HTML parser based on whether scripting was enabled or not when the
  parser was invoked.
The noscript element must not be used in XML
  documents.
The noscript element is only effective
  in the HTML syntax, it has no effect in the XHTML
  syntax. This is because the way it works is by essentially
  "turning off" the parser when scripts are enabled, so that the
  contents of the element are treated as pure text and not as real
  elements. XML does not define a mechanism by which to do this.
The noscript element has no other requirements. In
  particular, children of the noscript element are not
  exempt from form submission, scripting, and so forth,
  even when scripting is enabled
  for the element.
In the following example, a noscript element is
   used to provide fallback for a script.
<form action="calcSquare.php">
 <p>
  <label for=x>Number</label>:
  <input id="x" name="x" type="number">
 </p>
 <script>
  var x = document.getElementById('x');
  var output = document.createElement('p');
  output.textContent = 'Type a number; it will be squared right then!';
  x.form.appendChild(output);
  x.form.onsubmit = function () { return false; }
  x.oninput = function () {
    var v = x.valueAsNumber;
    output.textContent = v + ' squared is ' + v * v;
  };
 </script>
 <noscript>
  <input type=submit value="Calculate Square">
 </noscript>
</form>
   When script is disabled, a button appears to do the calculation on the server side. When script is enabled, the value is computed on-the-fly instead.
The noscript element is a blunt
   instrument. Sometimes, scripts might be enabled, but for some
   reason the page's script might fail. For this reason, it's
   generally better to avoid using noscript, and to
   instead design the script to change the page from being a
   scriptless page to a scripted page on the fly, as in the next
   example:
<form action="calcSquare.php">
 <p>
  <label for=x>Number</label>:
  <input id="x" name="x" type="number">
 </p>
 <input id="submit" type=submit value="Calculate Square">
 <script>
  var x = document.getElementById('x');
  var output = document.createElement('p');
  output.textContent = 'Type a number; it will be squared right then!';
  x.form.appendChild(output);
  x.form.onsubmit = function () { return false; }
  x.oninput = function () {
    var v = x.valueAsNumber;
    output.textContent = v + ' squared is ' + v * v;
  };
  var submit = document.getElementById('submit');
  submit.parentNode.removeChild(submit);
 </script>
</form>
   The above technique is also useful in XHTML, since
   noscript is not supported in the XHTML
   syntax.