IE 6/7/8でCSS3効果(border-radius、box-shadow ...)を取得するために、を使用してcss3pie
います。
ただし、css3piecss3-container (v1) / css3pie (v2)
はDOMでいくつかのタグを生成するため、予想されるアーキテクチャが乱れます。次に例を示します。
CSS
pre {
border: 1px solid #aaa;
border-radius: 5px;
behavior: url(pie.htc);
}
HTML
<div class="foo">bar</div>
<p class="getme">paragraph</p>
<pre>preformatted</pre>
jQuery
// undefined expected: getme
alert($("pre").prev().attr("class"));
// css3-container expected: p
alert($("pre").prev()[0].tagName);
// getme expected: foo
alert($("pre").prev().prev().attr("class"));
// 4 expected: 3
alert($("body").children().size());
// will not set expected: Impact
$("p+pre").css({fontFamily: "Impact"});
// it almost affects all such jQuery selctors
実際に生成されるソースは次のようになります。
<DIV class="foo">bar</DIV>
<P class="paragraph">paragraph</P>
<css3-container...>
<border...>
<shape...><stroke></stroke><stroke></stroke></shape>
</border>
</css3-container>
<PRE>preformatted</PRE>
誰かがこの種の問題に遭遇したことがありますか?回避策はありますか?CSS3をIE6/7/8で動作させるためのcss3pieの代替手段はありますか?