2017-10-14 31 views
0

CSSグリッド、クリップパス、トランスフォームを試していて、奇妙なバグがあります。設定は次のとおりです:SVGによってクリップされたいくつかのアイテムを含むグリッド。それぞれがイメージとテキストを含み、ホバーにスケール変換を加えたものです。クリップパスとスケールの組み合わせでフリッカーが発生する

私が見ているバグは、クリップされていないアイテムがミリ秒間表示されていることをクリップパスで時々「点滅」することです。これまでChromeとOperaでこの動作が見られましたが、Firefoxは正常に動作します。

.grid { 
    display: grid; 
    grid-gap: 0.5rem; 
    grid-template-columns: repeat(3, 1fr); 
} 

.item { 
    min-height: 15rem; 
    display: flex; 
    position: relative; 
    overflow: hidden; 
    transition: $transition; 
    &:before { 
     content: ""; 
     position: absolute; 
     width: 100%; 
     height: 100%; 
     background: rgba(#000, 0.5); 
     z-index: 10; 
     transition: $transition; 
    } 
    &:hover { 
     transform: scale(1.03); 
     transition: $transition; 
     z-index: 30; 
     &:before { 
      background: transparent; 
      transition: $transition; 
     } 
     .image { 
      filter: grayscale(0%); 
      transition: $transition; 
     } 
    } 
    .image { 
     position: absolute; 
     top: 0; 
     left: 0; 
     filter: grayscale(100%); 
     transition: $transition; 
     object-fit: cover; 
     width: 100%; 
    } 
    .details { 
     z-index: 10; 
     position: relative; 
     padding: 1.5rem; 
    } 
    &:nth-child(1) { 
     grid-column-end: span 2; 
     grid-row-end: span 2; 
     clip-path: polygon(0 0, 83% 0, 100% 100%, 0 100%); 
    } 
    &:nth-child(2), 
    &:nth-child(8) { 
     clip-path: polygon(0 0, 100% 0, 100% 100%, 13% 100%); 
     margin-left: -35%; 
    } 
    &:nth-child(3), 
    &:nth-child(9) { 
     clip-path: polygon(13% 0, 100% 0, 100% 100%, 26% 100%); 
     margin-left: -35%; 
    } 
    &:nth-child(4) { 
     grid-column: 2/span 2; 
     grid-row: 3/span 2; 
     clip-path: polygon(16% 0, 100% 0, 100% 100%, 0 100%); 
    } 
    &:nth-child(5) { 
     clip-path: polygon(0 0, 100% 0, 87% 100%, 0 100%); 
     margin-right: -33%; 
    } 
    &:nth-child(6) { 
     clip-path: polygon(0 0, 87% 0, 74% 100%, 0 100%); 
     margin-right: -33%; 
    } 
    &:nth-child(7) { 
     grid-column-end: span 2; 
     grid-row-end: span 2; 
     clip-path: polygon(0 0, 83% 0, 100% 100%, 0 100%); 
    } 
} 

は自分のコードに誤りがあるか、これはブラウザ(WebKitの?)の問題である:

ここでCSSの一部は(https://codepen.io/konishkichen/pen/qPMwLbバグと、ここで完全なコードを実証ペン)ですか?

+0

ないWebKitの、点滅を働きました。 –

+0

私は私のシステムでlibwebkit2gtk-4.0-37を参照しているEpiphanyの古いブラウザーを持っています。グリッドレイアウトを理解していないこと以外は、同じクリップパスのちらつきが見えます。 – ccprog

答えて

0

は私のために要素の非形質転換状態で-webkit-backspace-visibility: hiddenは、このanswer was found

+0

ちょうど試してみたかったが、Chromeの最新バージョンで問題が修正されている可能性があるので、もう再生できないと思う。あなたはできる? – koni666

関連する問題