2010-10-08 12 views
5

मैं यह पता लगाने की कोशिश कर रहा हूं कि अभी मेरे लिए सबसे अच्छा समाधान क्या है।क्या आप IE के लिए एक अलग सीएसएस बनाते हैं?

मैं CSS3 उपयोग कर रहा था कुछ गोलाकार कोनों छाया बनाने के लिए और ड्रॉप करने के लिए, लेकिन IE8 यह समर्थन नहीं किया है, इसलिए मैं IE8 के लिए CSS3pie का इस्तेमाल किया था। दुर्भाग्य से, पाई लगाने के बाद, ऐसा लगता है कि आईई 8 सिर्फ क्रोम या एफएफ के समान दिखना नहीं चाहता है। आईई इतनी परेशानी क्यों है?

मैं सिर्फ IE के लिए एक नई शैली पत्रक बनाने चाहिए? या क्या कोई बेहतर समाधान है? क्या कोई ऐसा जनरेटर है जहां आप अपने फ़ायरफ़ॉक्स को पूर्ण सीएसएस को IE में परिवर्तित कर सकते हैं?

+3

मुझे आपका दर्द महसूस होता है। – Spudley

उत्तर

4

क्या मुझे आईई के लिए सिर्फ एक नई स्टाइल शीट बनाना चाहिए?

हाँ, मुझे लगता है कि आप IE के लिए एक अलग सीएसएस जोड़ना होगा,

<!--[if IE 8]><link rel="stylesheet" type="text/css" href="../CSS/ie8.css" media="screen" /><![endif]--> 

जैसे यदि यह IE8 में सही नहीं लगता है, यह IE6 में भी बदतर होना चाहिए! :)

क्यों आईई इस तरह के एक परेशानी है?

क्योंकि आईई लोगों ने वेब मानकों पर ज्यादा ध्यान नहीं दिया, हालांकि इसमें सुधार हुआ है।

1

पॉल आयरिश काफी आईई विशिष्ट शैली के लिए एक nice solution एक समय पहले दे दी है।

असल में, यह सशर्त बयान का उपयोग करता है अपने body विभिन्न वर्गों देने के लिए। इस तरह से आप की तरह कुछ कर रही द्वारा एक IE विशिष्ट शैली सेट कर सकते हैं:

.ie6 #element{ /* styles */ } 
3

IE के लिए, हाँ, और वे कर रहे हैं, के रूप में @Joe आर नोट, सशर्त टिप्पणियों के माध्यम से शामिल थे। तो कम से कम विशिष्ट समर्थन प्रदान करने के लिए मार्क-अप का भ्रष्टाचार या अमान्यता नहीं है, जो विभिन्न सीएसएस हैक्स के साथ मौजूद होने की तुलना में एक बेहतर स्थिति है।

मेरे मामले में भी, जब तक इसके विपरीत कोई प्रतिबंध नहीं है, तो उस पृष्ठ पर एक सशर्त टिप्पणी शामिल करें जो कई अन्य मुफ्त ब्राउज़रों (आमतौर पर क्रोम, फ़ायरफ़ॉक्स, सफारी और ओपेरा) से जुड़ी एक मोडल वार्तालाप को पॉप अप करती है।) और सुझाव देते हैं कि उपयोगकर्ता अपने अनुभव को बेहतर बनाने के लिए अप-ग्रेड करना चाहें।

संयोग से, मैं परेशान न करें पिक्सेल-परिपूर्ण आईई संस्करण प्राप्त करने का प्रयास कर रहा हूं। यदि कोई क्लाइंट अनुरोध करता है, तो पर्याप्त उचित है, लेकिन सामान्य रूप से लागत-प्रति-घंटे को समझने के लिए केवल क्यूवी-कॉर्नर को आईई में आयताकार बक्से, और एफएफ, क्रोम आदि में वक्र की अनुमति देने के लिए पर्याप्त प्रोत्साहन है

मुख्य कारण यह है कि आईई ऐसा दर्द महसूस करता है क्योंकि, विंडोज़ पर एक मुफ्त ब्राउज़र के रूप में आईई की स्थापना के बाद यह लगभग 9 0% + बाजार में पहुंच गया, नेटस्केप कम या ज्यादा मर गया और, जबकि आसपास के विशिष्ट ब्राउज़र थे, विंडोज़ बाजार का अधिकांश हिस्सा विकल्पों का पीछा करने में रूचि नहीं लगा। प्रतिस्पर्धा के निम्न स्तर के साथ उच्च बाजार-प्रवेश की कमी ने बाज़ार को रोक दिया, और प्रोत्साहन को नवप्रवर्तन और सुधारने के लिए कम कर दिया।

केवल, के बाद से मुझे लगता है कि, फ़ायरफ़ॉक्स 15% की गोद लेने की दर को प्राप्त करने के लिए शुरू किया + आईई दल द्वारा किए गए, या IE प्रबंधन टीम, ध्यान देना, और सुधार को आगे बढ़ाने। और फिर भी, ऐसा लगता है कि मानकों को अपनाने के लिए आईई 9 विकास प्रक्रिया को 'ले लिया गया है।

+0

आईई को कर्षण मिला क्योंकि यह संस्करण 4 और 5 में बेहतर ब्राउज़र था। आईई 6 को आखिरी संस्करण माना जाना चाहिए था। Vista बनने वाला ऑपरेटिंग सिस्टम एक अलग ब्राउज़र ऐप की आवश्यकता को खत्म करना था, क्योंकि एवलॉन यूआई पर्यावरण (एक्सएएमएल + सीएसएस) सीधे वेब पेज प्रदर्शित करने में सक्षम होता। ऐसा कारणों के गुच्छा के लिए नहीं हुआ था, इसलिए आईई 7 लॉन्गहोर्न की राख से ब्राउज़र बनाने के लिए देर से पार्टी के प्रयास था। आईई 8 ने बचे हुए मुद्दों में से अधिकांश को तय किया; बाकी एक्सपी को मारने के चक्र और एमएस की इच्छा को छोड़ने के लिए नीचे है। –

+0

@ स्टैन रोजर्स; गंभीरता से? मुझे लगता है कि यह बताता है कि आईई ने वर्षों से ओएस घुसपैठ की है। लेकिन मुझे आश्चर्य है कि उन्हें कभी भी ब्राउजर से दूर करने का इरादा था, हालांकि यह एक दिलचस्प प्रस्ताव है। और मेरा मतलब यह नहीं था कि आईई की शुरुआती सफलताओं को अवांछित किया गया था, मैंने नेटस्केप 3 और 4 का उपयोग किया और यह पूरी तरह से सुखद अनुभव नहीं था। –

0

यदि यह केवल बारे में संपत्ति CSS3PIE (behavior:) द्वारा की जरूरत है, एक भी सीएसएस फ़ाइल का उपयोग वास्तव में एक समस्या (मैं व्यक्तिगत रूप से हर समय इसे करते हैं) नहीं होना चाहिए क्योंकि यह है कि संपत्ति अन्य ब्राउज़रों द्वारा नजरअंदाज कर दिया जाता है।

यदि कुछ भी है, तो आप आईई विशिष्ट सीएसएस फ़ाइल को मुख्य के साथ अनुरोध करने में अधिक ओवरहेड प्राप्त करेंगे, और आईई के लिए एक पूरी तरह से अलग सीएसएस फ़ाइल आपके द्वारा किए गए हर बदलाव के बाद बनाए रखने के लिए एक दुःस्वप्न होगी, आपके पास होगा इसे दो बार बनाने के लिए। मेरा दो प्रतिशत एक फाइल के साथ जाना है।

एक तरफ ध्यान दें के रूप में, मेरी CSS3PIE लेआउट, सभी ब्राउज़रों में वैसी ही दिखेगी तो शायद आपकी समस्या को अन्य संपत्तियों है कि आप प्रयोग कर रहे हैं और CSS3PIE से ही नहीं से आता है? शायद यह टूटने के संबंध में एक और विशिष्ट सवाल पूछने में मदद करेगा और एसओ को इसमें एक दरार होने दें।

0

एकाधिक सीएसएस समावेशन से बचने के लिए बेहतर है क्योंकि इस तरह आपने सीएसएस कोड को फोर्क किया है और इससे कुछ स्पष्ट मैन्टिनेंस मुद्दों को बढ़ाया जा सकता है (और कई सर्वर अनुरोधों के कारण प्रदर्शन धीमा कर सकते हैं)।

तुम सच में अलग सीएसएस कोड की जरूरत है मैं पहली बार एक सख्त doctype (एक्सएमएल प्रस्तावना या एचटीएमएल 5 के बिना xhtml1.0) उपयोग करने का सुझाव और मैं

<!--[if lt IE 7 ]> <body class="ie6 ie"> <![endif]--> 
<!--[if IE 7 ]> <body class="ie7 ie"> <![endif]--> 
<!--[if IE 8 ]> <body class="ie8 ie"> <![endif]--> 
<!--[if IE 9 ]> <body class="ie9 ie"> <![endif]--> 
<!--[if (gt IE 9)|!(IE)]><!--> <body> <!--<![endif]--> 

मूल रूप से एचटीएमएल 5 बॉयलरप्लेट दृष्टिकोण का उपयोग कर सुझाव देते हैं अगर आप अभी भी ब्राउज़र differencies है आप क्लास चयनकर्ता

1

AFAIK को प्रीपेड करके एक विशिष्ट आईई नियम को लक्षित कर सकते हैं AFAIK बल कोई ब्राउज़र किसी अन्य ब्राउज़र के साथ संगत होने का कोई तरीका नहीं है। तो, हाँ, आप IE के लिए एक अलग स्टाइलशीट जोड़ सकते हैं।

या आप modernizr का उपयोग कर सकते हैं और अन्य गुणों के लिए वैकल्पिक विकल्प प्रदान नहीं कर सकते हैं। इस तरह, आप सिंगल सीएसएस फ़ाइल के साथ कई ब्राउज़र की सेवा कर सकते हैं। बेशक, यदि उपयोगकर्ता अपने ब्राउज़र पर जावास्क्रिप्ट को अक्षम करता है तो यह समाधान काम नहीं करेगा।

1

साथ ही CSS3Pie (आप पहले से ही जानते हैं कि कौन महान है), तो आप modernizr की कोशिश करनी चाहिए, जो यह आसान ब्राउज़र क्षमताओं भिन्न के लिए अपने स्टाइलशीट समायोजित करने के लिए कर देगा।

इसके अलावा, मैं अक्सर browser compatibility charts पर Quirksmode.org पर संदर्भित करता हूं। यह देखने के लिए बहुत उपयोगी है कि सीएसएस (और अन्य ब्राउज़र फीचर्स) विभिन्न ब्राउज़रों में असमर्थित या छोटी हैं।

संबंधित मुद्दे