2017-04-06 15 views
6

iframe内のposition: fixed;の要素が正しくレンダリングされないという問題が発生しています。私たちはSafariのmacOSでこれに気がつきました。ここでiframe内の位置が「固定」の要素はSafariでレンダリングされません

は、それがどのように見えるべきかです:

enter image description here

ここでのMacOSのSafariは、(ページのロードに)次のようになります。ページで

enter image description here

上部と下部をロードバーは表示されません。彼らはスペースを占有しているDOMにあり、クリックすることができますが、ブラウザーによって「レンダリング」されていません。上記の画像でわかるように、バーは空白として表示されます。

JS、CSSまたはブラウザのサイズを変更して強制的に再描画すると、バーが表示されます。しかし、我々は再描画を強制する方法の解決策を模索していません。私たちの質問は、なぜこれが最初に起きているのでしょうか?

あなたはここに実際の例を見つけることができます。

https://testing.enuvo.ch/user/collect/#collector#/user/overlay

PS:それは常に発生しません。時々、ブラウザのサイズを変更して再試行すると、正しく表示されます。問題を再現できることを願っています。

+0

再描画ではわかりませんが、問題を指摘したい場合、noscriptブロックは、入力したテキストのタグをレンダリングします。 – abluejelly

+1

@abluejelly通知をいただきありがとうございます。これはソースコードをコピーしてこのテストサーバーに置く(あなたにアクセスできるようにする)ときに起きたはずです。 – Lionel

答えて

0

私はあなたの例を試してみましたが、本当に変です。 キャッシュの問題について考えましたか? Safariはiframeをキャッシュするためのユニークな動作をしていますが、おそらくあなたの問題はこれらから発生します。

このiframeでこのようなキャッシュを無効にするためのHTTPヘッダーを変更できますか?ここで

Cache-Control: no-cache, no-store, must-revalidate Pragma: no-cache Expires: 0 

はPHPの例です:

header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1. 
header('Pragma: no-cache'); // HTTP 1.0. 
header('Expires: 0'); // Proxies 
+0

残念ながら働いていない、それはまだ起こっている。 https://testing.enuvo.ch/user2/collect/#collector#/user2/overlay/ – Lionel

+0

iframeのリンクをすばやく変更できますか? 現在のリンクを次のように変更できますか: /user2/overlay /?t =タイムスタンプ またはphp: /user2/overlay /?t = <?= time(); ?> –

+0

完了!まだ起こっている: -/ – Lionel

-3

あなたはIFRAMEファイルではありません、あなたのビューファイルにCSSを記述する必要があります。

+0

Plaはあなたの回答を迷惑メールとして報告する可能性があるため、回答に無関係なリンクを追加しないでください。 – Shadow

3

したがって、position: fixedz-indexのグリッチがあります。古いブラウザの中には、それを少し違って扱うものや、別のやり方でコンテクストをスタックするものがあります。

は試行錯誤のビットの後、私は追加することによって、それが注入されたスタイルシートでの作業を取得するために管理してきました:

#ol-main-header, 
#cl-footer { 
    -webkit-transform: translateZ(0); 
} 

はまた、あなたはunnecesarry z-index: 99999削除することができるはずです。希望が役立ちます。

+0

Safariで正常に動作しているようですが、Windows上のChromeでオーバーレイを開くと、「ジャンク」が目立つようになります。 – Lionel

+0

それを見ずに何が間違っていると言うのは少し難しいです。あなたがテストenvの変更を行うことができたら、私はそれを調べることができました。 –

+0

ここに行く:https://testing.enuvo.ch/user3/collect/#collector#/user3/overlay/ – Lionel

関連する問題