Search code examples
javascripthtmlinternet-explorerxhtml

Why don't self-closing script elements work?


What is the reason browsers do not correctly recognize:

<script src="foobar.js" /> <!-- self-closing script element -->

Only this is recognized:

<script src="foobar.js"></script>

Does this break the concept of XHTML support?

Note: This statement is correct at least for all IE (6-8 beta 2).


Solution

  • The non-normative appendix ‘HTML Compatibility Guidelines’ of the XHTML 1 specification says:

    С.3. Element Minimization and Empty Element Content

    Given an empty instance of an element whose content model is not EMPTY (for example, an empty title or paragraph) do not use the minimized form (e.g. use <p> </p> and not <p />).

    XHTML DTD specifies script elements as:

    <!-- script statements, which may include CDATA sections -->
    <!ELEMENT script (#PCDATA)>