2011-06-20 19 views
5

मेरे पास CSS3PIE व्यवहार स्क्रिप्ट का उपयोग कर एक सीएसएस फ़ाइल है, ताकि IE8 मेरी फ़ाइलों का समर्थन करे, हालांकि, मैं सोच रहा था कि HTML फ़ाइल के सापेक्ष सीएसएस फ़ाइल के सापेक्ष व्यवहारिक URL बनाने का कोई तरीका है या नहीं। क्या इसे करने का कोई तरीका है?css3pie: क्या सीएसएस व्यवहार संपत्ति संबंधित यूआरएल की अनुमति देता है?

+0

नहीं है, इसके अलावा, आप व्यवहार क्रॉस डोमेन इसलिए या तो की मेजबानी के लिए कोई गूगल-कोड से लिंक नहीं कर सकते हैं। हाँ यह थोड़ी निराशाजनक है। – William

+0

धन्यवाद नींबू, और हाँ यह बहुत निराशाजनक है CSS3 बहुत अच्छा है लेकिन सभी ब्राउज़रों के साथ लड़कर कार्यान्वित करना मुश्किल है, यह एकमात्र समाधान है जिसे मैं सोच सकता हूं। सौभाग्य से केवल एक HTML फ़ाइल को उस फ़ाइल की आवश्यकता है, कम से कम अभी। –

+0

मैं तब तक इंतजार नहीं कर सकता जब तक Google फ्रेम एक फ्लैश के रूप में फ़्लैश की तरह पकड़ लेता है। – William

उत्तर

5

आप एक पूर्ववर्ती स्लैश (डोमेन के रूट से), इस के समान के साथ एक पथ इस्तेमाल कर सकते हैं:

behavior: url(/css/PIE.htc); 

जो अपेक्षा के अनुरूप काम करना चाहिए।

या, आप PIE.js संस्करण इस्तेमाल कर सकते हैं: http://css3pie.com/documentation/pie-js/

जे एस संस्करण के लाभ - एक रिश्तेदार पथ के माध्यम से संदर्भित PIE.js फ़ाइल है सरल ..

लेकिन , पीआईई.जे.एस. के डाउनसाइड्स के बहुत हैं सावधानी से चलना।

0

ध्यान रखें कि यदि आपकी साइट है HTTPS और गैर HTTPS सामग्री आप एक डबल स्लैश का उपयोग करने के लिए इसे प्रोटोकॉल नास्तिक रखना चाहते हो सकता है: http://paulirish.com/2010/the-protocol-relative-url/

यह IE8 में से एक नकारात्मक पक्ष यह फ़ाइल के दोनों संस्करणों हथियाने है ।

1

एक और अन्य दृष्टिकोण आपके लिए रूट खोजने के लिए सर्वर-साइड तकनीक का उपयोग करना है। मैं इस तकनीक का उपयोग करता हूं क्योंकि मैं स्थानीय डोमेन रूट पर वर्चुअल निर्देशिकाओं में साइटों को विकसित करता हूं।

प्रमुख नकारात्मक यह है कि इसे एक अलग सीएसएस फ़ाइल की बजाय कोड में किया जाना चाहिए।

नेट उदाहरण:

<!--[if lt IE 7]> 
    <style> 
     .foo 
     { 
      behavior: url(<%= ResolveUrl("~/") %>/js/libs/PIE.htc) 
     } 
    </style> 
<![endif]-->