<p>This tests the listing tag. It's an obsolete synonym for the pre tag.</p>

<div>Text just before the listing.</div>
<listing id="mr. listing" width=100>
This text is inside a listing tag.
It acts exactly like the pre tag, so the text should be monospaced and not have any line breaks.
Also, it eats the very first newline inside the listing, so there should not be a blank line above.
</listing>

<p>The listing tag has a width in it. To test the JavaScript binding, this page gets the width, here: <a id="width place"></a></p>

<script>
    var listing = document.getElementById("mr. listing");
    var widthPlace = document.getElementById("width place");
    widthPlace.appendChild(document.createTextNode(listing.width));
</script>
