- The stylesheet:
<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

  <xsl:output method="xml" version="1.0" encoding="iso-8859-1" indent="yes"
            omit-xml-declaration="no" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
            doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"; />

  <xsl:template match="/">
    <html>
      <head>
        <title>bug test</title>
      </head>
      <body>
        <div></div>
      </body>
    </html>
  </xsl:template>

</xsl:stylesheet>

- The output:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html>
<head>
<title>bug test</title>
</head>
<body>
<div />
</body>
</html>

- The standards:
Empty-element tags MAY be used for any element which has no content,
> whether or not it is declared using the keyword EMPTY.
> For interoperability, the empty-element tag SHOULD be used, and
> SHOULD only be used, for elements which are declared EMPTY.
(http://www.w3.org/TR/REC-xml/#sec-starttags)

C.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 />).
(http://www.w3.org/TR/xhtml1/#guidelines)

- The patch:
Elements like <p> or <div> aren't declared as EMPTY in the XHTML DTD.
According to XML and XHTML standards, the <div></div> form should be used instead of <div/>. Both are XML (and XHTML) valid, but the second leads to strange problems with some browsers (guess who --- IE).


Hope this helps,
Marco


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to