Operaがpタグを分割すべきでない場所で分割することに問題があります。
XMLの例を次に示します。
<?xml version="1.0" ?>
<?xml-stylesheet type="text/xsl" href="temp.xsl"?>
<data>
<item name="car">
<summary>It goes by land.</summary>
</item>
<item name="plane">
<summary>It simply flies.</summary>
</item>
</data>
XSLは次のとおりです。
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/data">
<html>
<link rel="stylesheet" type="text/css" href="temp.css"/>
<body>
<xsl:for-each select="item">
<h1><xsl:value-of select="@name"/></h1>
<xsl:if test="count(summary)>0">
<p class="summary"><xsl:copy-of select="summary" /></p>
</xsl:if>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
およびCSS:
body {
font-size:14px; text-align:center; width:400px; margin:0 auto; font-family:Verdana;
}
h1 {
color: #231F20; font-size: 1.2em;
}
.summary {
text-align: justify; padding: 1em; background-color: #F0F4F8;
border-left: 1px solid #BBB; border-right: 1px solid #BBB;
}
IE9でこれを実行すると、次のようになります。

IE9は本体の幅を尊重しませんでしたが、それは重要ではありません。XSLTはデータを正しく変換しました。summaryxmlタグは、。のp付いたタグの間に配置されclass="summary"ます。
しかし、これをOpera 12で実行すると、次のようになります。
ご覧のとおり、幅は尊重されていますが、pタグは2つに分割され、summaryその間にタグが挿入されています。これは、Operaのインスペクターで確認できます。

タグに、、、、などのタグが含まれていることを期待しているため、copy-ofの代わりに使用する必要があります。value-of<summary>htmlbispan
Operaがpタグを2つの空のタグに分割しsummary、それらの間に挿入するのはなぜですか?そして、これを回避して、タグの内容をsummaryタグ内に配置できるようにするにはどうすればpよいですか?