2016-12-27 16 views
-1

明らかに私はoverflowプロパティで小さな問題があります。私は現在、抽象的なUIフレームワークuixに取り組んでいます。問題自体は、ユーザーがボタンをクリックするたびに生成される波の効果に関連しています。 Github Pagesページをご覧になり、border-radius3pxよりも多く設定してみてください。気づいたように、波がボタン要素の端に当たったらすぐにoverflowは機能しません。ボタンオーバーフローが正しく機能していませんか?

完全なソースコードはProject Pageにあります。

次のコードを使用して波形動作を作成しています。

.btn { 
    display: inline-block; 
    min-width: $button-min-width; 
    border-radius: $button-border-radius; 
    overflow: hidden; 
    cursor: pointer; 
    ... 
} 

.wave { 
    display: none; 
    position: absolute; 
    border-radius: 50%; 
    padding: 50% 0; 
    height: auto; 
    width: 100%; 
    ... 

    &.wave-in {  
    display: inline-block; 
    animation: $wave-animation; 
    ... 

uix.element(".btn").each(function(el) { 
    el.onmousedown = function(e) { 

    uix.element(this).addClass("waving"); 

    var rect = this.getBoundingClientRect(); 
    // Create child span element for wave effect: 
    var span = document.createElement("span"); 
    span.className = "wave"; 
    Object.assign(span.style, { 
     "left": (e.clientX - rect.left - (rect.width/2)) + "px", 
     "top": (e.clientY - rect.top - (rect.width/2)) + "px" 
    }); 
    this.appendChild(span); 

    // Add button wave animation: 
    uix.element(span).addClass("wave-in"); 

    // Remove span after animation ends: 
    setTimeout(function() { 
     uix.element(this).removeClass("waving"); 
     span.remove(); 
     delete span; 
    }, 800); 

    } 
}); 

答えて

0

この答えをチェックアウト:答えは示唆するようhttps://stackoverflow.com/a/35251771/2565294

は、.btnz-index: 1;を追加し、この問題を修正します。

+0

しました。私はすでにそれを試したと思った。しかし、間違って 'span.wave'要素で試してみました。なんでも。ありがとうございました –

関連する問題