0

おそらく簡単すぎる2つの質問がありますが、ここではまだ解決策が見つからないか、見つかりません。多分誰かが私を助けてくれることを願っています:)

html5-video要素を出力したいのですが、コーデックと一緒にmime-typeの一部であるように見えます。次のように記述する必要があります。

<source src="mymovie.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'/>

type-attributeは、一重引用符(!)で始まります。それを尊重せず、二重引用符で囲み、コーデックを一重引用符で囲むと、Internet Explorer 9でムービーを読み込めない場合があります(コーデックがサポートされていないと言います)。

最初の質問: XSLTでその属性だけを一重引用符で囲むようにするにはどうすればよいですか?

2番目の質問: IEと二重引用符で囲まれたタイプ属性で同じ問題が発生した人はいますか?そして、それは本当にそのように必要ですか、それは規則に反していませんか?

すべての回答に感謝します!:)

4

1 に答える 1

0

単一の属性値に対してシリアル化形式を強制できるとは思いません。一部の XSLT プロセッサーでは、結果ツリーをシリアライズするときに使用される属性値の区切り文字を定義できる場合があります。どの XSLT プロセッサを使用していますか?

そして、XSLTコードにリテラル結果要素を次のように書くと思います

<source src="mymovie.mp4" type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;"/>

結果ツリーをシリアル化するとき、XSLT プロセッサは属性区切り文字として一重引用符または二重引用符を自由に使用できますが、二重引用符を使用する場合、属性値の引用符を適切にエスケープするため、結果は次のようになります。

<source src="mymovie.mp4" type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;">

HTML出力メソッドで、HTML5パーサーはそれを問題なく消費する必要があります。

于 2013-01-03T11:13:13.637 に答える