2017-08-13 20 views
2

私はhoverOpenDelay={0}hoverCloseDelay={0}を使うことができると知っていますが、私が知る限り、変更できないポップオーバーコンテナにはまだ100msの不透明度の遷移があります。この移行を削除して、ポップオーバーがすぐに表示されるようにしたいと思います。ポップオーバーの移行を完全に無効にするにはどうすればよいですか?

ありがとうございました!

答えて

2

これはかなり困難です。 Blueprintは、react-addons-css-transition-groupライブラリに、アニメーションが必要な要素のクラス名の末尾に-enter-appear-leave-enter-active-appear-active-leave-activeの接尾辞を追加したライブラリを使用しています。あなたの場合、オーバーレイスタイルを手動でオーバーライドする必要があるかもしれません。このような何か:もちろん

.pt-overlay-enter, 
.pt-overlay-appear { 
    opacity: 0; 
} 

.pt-overlay-enter-active, 
.pt-overlay-appear-active { 
    opacity: 1; 
    transition-property: opacity; 
    // `step` didn't work cross browser for me 
    transition-timing-function: ease; 
    // i've found 0ms is causes react-addons-css-transition-group to fire events unreliable on certain browsers 
    transition-duration: 1ms 
    transition-delay: 0; 
} 

、あなたはアニメーションを削除するためにpopoversに適用するだけに、これらの規則の範囲を狭めることになるでしょう。

blueprintがアニメーションライフサイクルクラスをスタイルするために何をしているのか正確に見たい場合は、スタイルをチェックしてください。ミックスインは、here(他の場所の中でも)使用される。

+0

ええ、あなたが言及したように、遷移時間を0msに設定すると、確実に表示または非表示になるポップオーバーに問題が発生します。これは、物事を扱うのが非常に貧弱なようです。このコンポーネントや何かのためのreactand-addons-css-transitionを無効にする方法はありますか? 1msの遅延が認められる。 – Will

+0

私は気づいていません。そして、はい、「1ms」は私のためには十分に良いものでしたが、確かにフレームやアニメーションがあります。ライブラリはかなり青写真に包まれていますが、コンポーネントごとにアニメーションを無効にするためにユーザーにプロップを公開するのは簡単です。これはまだほとんどのユーザーにとっては大した問題ではありませんが、Githubのレポにチケットを登録することをおすすめします。 –

関連する問題