1

私はPIEを使用してクロスブラウザーCSS3効果(グラデーションの背景、丸みを帯びた角、ドロップシャドウなど)を実現していますが、jqueryアコーディオンがひどいものになっています。

基本的に、PIEがcss3-container要素をDOMに挿入すると、jqueryアコーディオンコードは回復できません。これは、アコーディオンコンテナーがH3要素とDIV要素の交互のリストで排他的に満たされることを想定しているためです。

これらの2つのツールを一緒にうまく機能させる方法を見つけた人はいますか?

4

1 に答える 1

2

CSS PIEの代わりにpie.jsを使用すると、pie.jsが提供する単純な利点は、いつpieクラスを適用するかを決定できることです。ここで、pie.jsの使用方法に関する優れたドキュメントを見つけることができます。単純にjavascriptの方法で、コードがjQueryによって実行された後にパイが適用されるため、マークアップを台無しにしないでください。[私はそれをテストするつもりですが]

そして、パイを含むコードは次のようになります。

$('.accordion').accordion({
  parameter:value;
  });
$('.pieElement').each(function(){
  PIE.attach(this);
});

これを行う別の方法は、ガターを使用することです。WebkitのためにモバイルWebアプリをプログラミングしているときに、ガターが特にポリフィルでどれほど役立つかを知りました。

ガターを使用すると、コードは次のようになります。

   <div id="accordion">
<h3><span class="gutter"><a href="#">Section 2</a></span></h3>
<div>
      <div class="gutter">
    <p>
    Sed non urna. Donec et ante. Phasellus eu ligula. Vestibulum sit amet
    purus. Vivamus hendrerit, dolor at aliquet laoreet, mauris turpis porttitor
    velit, faucibus interdum tellus libero ac justo. Vivamus non quam. In
    suscipit faucibus urna.
    </p>
      </div>
</div>
  </div>

次に、PIE CSS3をガターに適用します。PIEについて読んだところ、要素の親の内部にVMLマークアップが適用されているようです。その場合、ガターを使用すると、マークアップを変更せずにスタイルが適用されます。

于 2012-02-11T12:00:27.000 に答える