2010-10-18 13 views
31
में

कैसे मैं इसठीक सीएसएस <! - [अगर आईई 8 लीटर]> आईई

<!--[if lt IE 8]> 
    <style type='text/css'> 
    #header ul#h-menu li a{font-weight:normal!important} 
    </style> 
    <![endif]--> 

अगर मैं कोड से ऊपर <!--[if lt IE 8]><![endif]--> हटाने का उपयोग कर सकते करने के लिए 'अच्छा आईई 8 में, लेकिन अगर चलाने करूँगा मैं इसे नहीं चलाता। मुझे आईई संस्करण में उपरोक्त कोड में चाहते हैं, तो निश्चित आईई के साथ मेरी मदद करें।

मैं कोड चाहते हैं केवल IE

+1

तुम क्या पहली जगह में हासिल करना चाहते हैं में/छिपाने दिखाने के लिए एक फीका बदलने के लिए इस्तेमाल किया गया था? –

+0

आपके सशर्त कथन में जो भी शैली होगी, आईई संस्करण के बाद सभी आईई संस्करण में चलाया जाएगा। लेकिन मुझे यकीन नहीं है कि आप क्या चाहते हैं, उस कोड का आईई 8 में कोई प्रभाव नहीं पड़ेगा क्योंकि यह सभी ब्राउजर को कम करता है आईई 8 क्या आप कृपया बता सकते हैं कि आप वास्तव में क्या चाहते हैं? – Christophe

+0

मैं कोड # हेडर उल # एच-मेन्यू ली चाहता हूं {फ़ॉन्ट-वेट: सामान्य! महत्वपूर्ण} केवल आईई – meotimdihia

उत्तर

68

में #header ul#h-menu li a{font-weight:normal!important} रन आप इस, आईई 8 में काम करते हैं और नीचे का उपयोग

<!--[if lte IE 8]> 

lte जिसका अर्थ है 'से कम या बराबर "चाहते हैं।

सशर्त टिप्पणियों पर अधिक जानकारी के लिए, उदा। quirksmode.org page

+1

और यह आपकी सशर्त टिप्पणी में केवल बाहरी स्टाइलशीट का संदर्भ डालने का एक अच्छा अभ्यास हो सकता है। मेरी राय में बेहतर पठनीयता। –

+2

@ जस्टस: और छोटे एचटीएमएल स्रोत कोड के साथ बेहतर कैशबिलिटी भी। – Tomalak

2

के बारे में
<!--[if IE]> 
... 
<![endif]--> 

आप here सशर्त टिप्पणियों के बारे में पढ़ सकते हैं कैसे।

+0

यह काम करेगा क्योंकि यह आईई के सभी संस्करणों को ट्रिगर करेगा। हालांकि आप 'lte IE 8' संस्करण का उपयोग करना पसंद कर सकते हैं क्योंकि आप इसे IE9 में नहीं चलाना चाहते हैं। – Spudley

+0

ओपी ने बिना किसी विनिर्देश के "केवल आईई में" मांगे। अन्यथा, हाँ, 'lte IE8' निश्चित रूप से बेहतर होगा। – Boldewyn

0
<!--[if IE]> 
    <style type='text/css'> 
    #header ul#h-menu li a{font-weight:normal!important} 
    </style> 
    <![endif]--> 

आईई के सभी संस्करणों में उस शैली को लागू करेगा।

25
<!--[if lt IE 8]><![endif]--> 

उपरोक्त कथन में लेफ्टिनेंट का अर्थ है 'इसलिए आईई 8 से कम'।

IE के सभी संस्करणों के लिए आप बस का उपयोग कर सकते

<!--[if IE]><![endif]--> 

या यानी 6 उदाहरण के लिए ऊपर सभी संस्करणों के लिए।

<!--[if gt IE 6]><![endif]--> 

कहाँ जीटी है

आप नीचे दिए गए संस्करणों के लिए विशिष्ट शैली और IE8 सहित लिखने के लिए चाहते हैं, तो 'से अधिक' आप लिख सकते हैं

<!--[if lte IE 8]><![endif]--> 

जहां LTE से 'कम और बराबर है '

6

[if lt IE 8] का अर्थ है "यदि IE8 से कम है" - और यही कारण है कि यह IE8 में काम नहीं कर रहा है।

वहाट आप चाहते हैं [if lte IE 8] जिसका अर्थ है "यदि IE8 से कम या बराबर है"।

6

<!-- [if lt IE 9] > का उपयोग IE9 के लिए इस कोड को सही करें। रिक्त स्थान बहुत महत्वपूर्ण हैं।

1

इसके अलावा, टिप्पणी टैग

<comment></comment> 

केवल IE 8 और नीचे में समर्थित है, ताकि यदि वास्तव में क्या आप लक्षित करने की कोशिश कर रहे हैं, तो आप उन्हें टिप्पणी टैग में लपेट कर सकते हैं। वे

<!--[if lte IE 8]><![endif]--> 

में कौन सा एलटीई "कम या बराबर" है।

देखें: Conditional Comments

2
I found cascading it works great for multibrowser detection. 

इस कोड यानी 8 7 6.

$(document).ready(function(){ 
    if(jQuery.browser.msie && jQuery.browser.version.substring(0, 1) == 8.0) 
     { 
      $(".glow").hide(); 
      $('#shop').hover(function() { 
     $(".glow").show(); 
    }, function() { 
     $(".glow").hide(); 
    }); 
     } 
     else 
     { if(jQuery.browser.msie && jQuery.browser.version.substring(0, 1) == 7.0) 
     { 
      $(".glow").hide(); 
      $('#shop').hover(function() { 
     $(".glow").show(); 
    }, function() { 
     $(".glow").hide(); 
    }); 
     } 
     else 
     {if(jQuery.browser.msie && jQuery.browser.version.substring(0, 1) == 6.0) 
     { 
      $(".glow").hide(); 
      $('#shop').hover(function() { 
     $(".glow").show(); 
    }, function() { 
     $(".glow").hide(); 
    }); 
     } 
     else 
     { $('#shop').hover(function() { 
     $(".glow").stop(true).fadeTo("400ms", 1); 
    }, function() { 
     $(".glow").stop(true).fadeTo("400ms", 0.2);}); 
     } 
     } 
     } 
     });