IE6 boş sayfa

6 Cevap php

A site I am working on that is built using PHP is sometimes showing a completely blank page. There are no error messages on the client or on the server. The same page may display sometimes but not others. All pages are working fine in IE7, Firefox 3, Safari and Opera. All pages are XHTML with this meta element:

<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />

Bu PHP kodu ekleyerek sorunu çözdünüz Bu appears ki:

header('Content-type: text/html; charset=utf-8');

Ben bu sorun XHTML, kodlama gzip sıkıştırma, ya da önbellekli neden olabilir, ama kimse bu tahminler yedeklemek mümkün olmuştur okudum.

Sorun aralıklı olarak benim çözüm aslında sorunu çözmüştür emin değilim.

My question is, are there reproducible ways of having IE6 show a blank page when other browsers display content? If so, what causes it and what solves it?

6 Cevap

This is a content-type problem from IE. It does not know how to handle application/xhtml+xml.

Although you write xhtml+xml, IE only knows text+html. It will be the future before all agents know xhtml+xml

içerik türü content = "text / html ile meta etiketi değiştirmek;

IE bug #153 "Self Closing Script Tag" hata, which is well known to cause blank pages gibi geliyor.

Nedeniyle IE hata nedeniyle, NEVER kod aşağıdaki ve IE çalışmak için bekleyebilirsiniz.

<script src="...." />

(Etiketi kendiliğinden kapanan ise, acı bir dünya için vardır)

Bunun yerine, her zaman olduğu gibi kod;

<script src="...."></script>

Multibyte karakterler ile sadece sayfa IE6 ve IE7 yoktu - Ben dil belirli bir benzer bir sorun vardı. Bu iki tarayıcılarda çıkıyor, Content-Type meta etiketi ve başlık etiketi sipariş büyük bir anlaşma. Yani sorun sabit meta etiketinden sonra (Japonca karakterler içeren) etiketini koyarak.

Bu tam olarak deneyim ile eşleşen emin değilim. Bu (hizmet paketi dahil) IE özel sürümü kullanılan hangi bağlıdır.

IE6 SP2 ve ile bilinen bir render sorunu IE7 (aynı işleme motorunu kullanmak hem de) HTML yetim etiketleri varlığıdır. Bu yetim bir div veya komut dosyası etiketi olabilir.

<script language="javascript">    // no closing tag
alert('hello world');
<body>
hello world
</body>

Yukarıdaki IE6 SP1 ve Firefox'ta sadece iyi işler, ancak sadece IE6 SP2 ve boş bir sayfa göreceksiniz IE7.

Ayrı bir kapanış etiketi olmalıdır diğer bazı etiketler vardır. Herhangi bir <div> ve <script> etiketleri bir sonla </script> veya <div> etiketi, değil açıklığın sonunda sadece bir kapanış çizgi var olmadığını kontrol edin tag. Bir tane olan <textarea>. Her iki etiketleri olması gerekir.

You can test if this is occurring with your site if you can View Source of your blank page and get the source html even though your page is blank.

IE kullanıcıları için text / html olarak Content-Type başlığı ile sayfaları hizmet etmelidir. Sadece (IE bunu görmezden olacak) application / xhtml + xml olarak bırakın, meta etiketi değiştirmeniz gerekmez.

Ben nedeniyle yazım hatası Bu hata var.

Ben meta etiketi yazdı:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />

Senin sayende ben onu düzeltti:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

ve ben şimdi bir sorun yok.