2010-06-23 12 views
7

मेरे पास एक लेआउट समस्या है जो आईई 8 पर संगतता मोड में प्रस्तुत पृष्ठ के कारण है। क्या किसी विशेष पृष्ठ के लिए IE8 को संगतता मोड दर्ज करने के कारणों का पता लगाने का कोई तरीका है?यह निर्धारित करना कि संगतता मोड में एक पृष्ठ क्यों प्रस्तुत किया जा रहा है?

माइक्रोसॉफ्ट के दस्तावेजों के अनुसार, निम्न स्थितियाँ पैदा कर सकता है एक पृष्ठ संगतता मोड (http://msdn.microsoft.com/en-us/library/cc288325%28VS.85%29.aspx) में प्रदान करने की:

  • संगतता दृश्य पृष्ठ के लिए सक्षम है।
  • पृष्ठ इंट्रानेट ज़ोन में लोड किया गया है और इंटरनेट एक्सप्लोरर 8 को संगतता दृश्य में इंट्रानेट जोन में पृष्ठों पर कॉन्फ़िगर किया गया है।
  • इंटरनेट एक्सप्लोरर 8 को संगतता दृश्य में सभी वेबसाइटों को प्रदर्शित करने के लिए कॉन्फ़िगर किया गया है।
  • इंटरनेट एक्सप्लोरर 8 को संगतता दृश्य सूची का उपयोग करने के लिए कॉन्फ़िगर किया गया है, जो कि वेब साइट्स का एक सेट निर्दिष्ट करता है जो हमेशा संगतता दृश्य में प्रदर्शित होते हैं।
  • डेवलपर टूल का उपयोग वेब पेज में निर्दिष्ट सेटिंग्स को ओवरराइड करने के लिए किया जाता है।
  • वेब पेज को पृष्ठ लेआउट त्रुटि का सामना करना पड़ा और इंटरनेट एक्सप्लोरर 8 को संगतता दृश्य में पृष्ठ को फिर से खोलकर स्वचालित रूप से ऐसी त्रुटियों से पुनर्प्राप्त करने के लिए कॉन्फ़िगर किया गया है।

पृष्ठ की समीक्षा करने के बाद, मैंने पहली संभावनाओं को अस्वीकार कर दिया है कि यह पृष्ठ पर पृष्ठ लेआउट त्रुटि होना चाहिए। मैं इस त्रुटि को ढूंढना चाहता हूं।

+0

पृष्ठ लेआउट त्रुटि के संबंध में: संगतता दृश्य को क्रियान्वित किया जाता है जब IE8 प्रतिपादन त्रुटि "अप्राप्य त्रुटि" का सामना करती है। मुझे यकीन नहीं है कि यह क्या है। लेकिन मैं सुझाव दूंगा कि आपका पृष्ठ एचटीएमएल (आपके पास क्या DOCTYPE है?) को सत्यापित करें, फिर, सीएसएस और जावास्क्रिप्ट भाग को भाग से हटाने का प्रयास करें, ताकि आप समस्या का कारण बनने से इनकार कर सकें, – Daniel

उत्तर

4

जांचें कि क्या आपके पास < मेटा > टैग आईई को संगतता मोड में मजबूर करने के लिए है।

आप IE8 (पूरी तरह से सीएसएस 2.1 आज्ञाकारी) के रूप में प्रस्तुत करने के लिए यदि आप चाहें तो यह मजबूर कर सकते हैं:

<meta http-equiv="X-UA-Compatible" content="IE=8"/> 
+1

ध्यान दें कि 'एक्स-यूए-संगत' मेटा टैग को 'हेड' में पहला मेटा टैग होना चाहिए –

0

मान लिया जाये कि आप आईडी compat-चेतावनी के साथ एक छिपा तत्व है:

जावास्क्रिप्ट डब्ल्यू/jQuery :

$(function(){ 
    function showCompatWarning() { 
     $('#compat-warning') 
      .css('display','block') 
      .css('height','auto') 
      .show(); 
    } 
    var tridentOffset = navigator.appVersion.indexOf('Trident/'); 
    if (tridentOffset === -1) return; 
    var jscriptVersion = 0; 
    /*@cc_on @*/ 
    /*@if (@_jscript) jscriptVersion = @_jscript_version ; @*/; 
    /*@end @*/ 
    var tridentVersion = parseInt(navigator.appVersion.substr(tridentOffset+8),10); 
    var guessIEVersion = tridentVersion + 4; 
    if ((document.documentMode && jscriptVersion && jscriptVersion < 10 && jscriptVersion !== document.documentMode) || 
     (document.compatMode && document.compatMode === 'BackCompat') || 
     (document.documentMode && document.documentMode < 10 && document.documentMode != guessIEVersion)) 
     showCompatWarning(); 
}); 

पहचान और चेतावनियां, संगतता नरक के खिलाफ रक्षा की आपकी पहली और आखिरी पंक्तियां।