Close HTML Script Tag

external-js, html, tags

Solution

The concept of self-closing tags is an XML concept. You can't use them in HTML. (You can use them in XHTML, but only if the document is served with an XML content-type, not if it is served as `text/html`).

In HTML some elements (such as `<img>`) cannot have any content, so they don't have end tags).

Since a script can have a `src` attribute or the script be can inside the element, `<script>` is not one of them.

(HTML 5 allows a `/` character to appear at the end of a start tag for an element that is defined as EMPTY, but it is just sugar for people addicted to XML and has no meaning in the language).

Problem

I just curious why my JavaScript can't run (tested in Firefox and IE) if I write the `<script>` tag like this: ``` <script type="text/javascript" src="script.js"/> ``` It will work if I change that line to: ``` <script type="text/javascript" src="script.js"></script> ``` So my question is: why I can't close the `script` tag in the start tag since I don't have any content inside it. My JavaScript code is simple, just: ``` alert("test"); ``` Notes: I check firefox error console and no error.

Original source

Related problems