Bir web sayfası yüklenirken background-color flaş önlemek için nasıl?

5 Cevap php

Ben bir web sitesi (PHP kullanarak) var. Ana plan yeşil renk ve içerik alanı beyaz değildir. (Bir kaç milisaniye sürer gibi) başka bir sayfaya geçiş yaparken, beyaz devralacak önce arka plan rengi bir flaş verir. Ben onun yüzünden yol dom elemanı çizildiğini / oluşturulan düşünüyorum. I ob_start(); ve ob_flush(); kullanarak denedim ama bir yardım çok değil.

Bunu önlemek için herhangi bir yolu var mı?

Thanks JJ

5 Cevap

"FOUC" veya "flash of unstyled content" için Google ve bu önlemek için birçok yol bulacaksınız.

Sen içerik alanı için bir boyut (yükseklik ve genişlik) veya min-yükseklik ayarı açıkça deneyebilirsiniz. Ayrıca beyaz alana sahip bir arka plan resmi kullanabilirsiniz. Arka plan düz bir renk (veya yatay gradyan) ise, çok küçük bir dosya boyutu olacak bir 1px yüksek gif kullanabilirsiniz. Plan ilk defa yüklenen önce Ama yine de bir göz kırpma olabilir.

Sonuçta, kullanıcıların bu görmeye alışık düşünüyorum. Ben çok büyük bir problem olduğunu sanmıyorum ve bunu çözmeye çalışırken çok fazla zaman harcamak olmaz. Ama belki patron katılmıyor.

Sadece bir tahmin, ama CSS, ilk, sonra, tek bir CSS dosyasındaki içerik alanı stil bildirimini iki kural koymak ve herhangi diğerlerinden önce emin olun bu CSS dosyası yükleri yapmak.

Bu durumda eğer ben bilmiyorum, ama ben IE'de stilize olmayan elementlerin titrek sorunu önlemek için olduğunu gördüm, birileri gibi boş bir komut dosyası etiketi ekledi

<script type="text/javascript">//This is necessary to avoid flickering of not stylized items in IE</script>

Ben şahsen oldukça flaşı gibi. Bana yeni bir sayfa gerçekten yüklü biliyorum sağlar. Bu geribildirim bulunuyor.

Eski bir meslektaşı az bilinen bir Internet Explorer bir fade transition sayfaları arasında, örneğin, diğer şeyler arasında, yapmanızı sağlar <meta> etiketi ... şey tanıştırdı

<meta http-equiv="Page-Enter" content="progid:DXImageTransform.Microsoft.Fade(Duration=2)">
<meta http-equiv="Page-Exit" content="progid:DXImageTransform.Microsoft.Fade(Duration=2)">

Bu IE-sadece bulunuyor.