clip
CSSとclip-path
プロパティを使用して、単一ページの Web サイト レイアウトのフローティング ページャー ナビゲーションを表示しようとしています。背景が暗いか明るいかに基づいて、ナビゲーションの色を変更しようとしています。http://dannymcgee.net/redesignで、意図した結果を Firefox で確認できます。また、トラブルシューティングの目的で、 http: //dannymcgee.net/dev/clipnav-prototype/ で、ナビゲーションとコンテナーをよりクリーンで軽量なコードで複製しました。
これは、異なる背景色を持つ各セクションのマークアップの構造です。
<section>
<div class="clipper">
<ul class="nav">
...
</ul>
</div>
<article class="content">
...
</article>
</section>
section
背景が変わるたびにこの全体が繰り返されます。それぞれsection
が相対的に配置されています。は次の.clipper
ようにスタイル設定されています。
position: absolute;
top: 0;
left: 0;
bottom: 0;
width: 300px;
clip: rect(auto,auto,auto,auto);
clip-path: inset(0 0 0 0);
クリッパーの.nav
内側はposition: fixed
、ページの上部からあり、 がありますbackface-visibility: hidden
。
この効果は基本的に Firefox で希望どおりに動作しますが、Chrome と IE ではバグがあります。Chrome では、背景画像が奇妙に動作し、ナビゲーションは最初のセクションを過ぎると操作できなくなります。IE では、ナビゲーションは最初のセクションを過ぎてまったく表示されません。私はこれとまったく同じ設定が Chrome と IE で正しく動作しているのを見てきました(実際、私はコメントできない古い StackOverflow スレッドのリンクを見つけました)。彼らは違ったやり方をしています。何らかの shim Javascript または jQuery ソリューションを見つけることができれば、それを使用してかなり満足できますが、これは非常に珍しいケースのシナリオのようで、どこから調べればよいかさえわかりません。