2011-04-22 19 views
11

ठीक है, तो मैं विभिन्न ब्राउज़रों में text-shadow लागू करने के लिए कोशिश कर रहा हूँ। मेरे पास आईई 6, आई 7, एफएफ, क्रोम, और ओपेरा सभी काम कर रहे हैं ... लेकिन आईई 8 किसी भी छाया को तब तक नहीं दिखाएगा जब तक कि यह 'संगतता दृश्य' में न हो।पाठ छाया: IE8

मैं खोज/गूगल के माध्यम से 'समाधान' की एक संख्या को देखा है, लेकिन छाया अभी भी केवल 'संगतता दृश्य' में दिखाई दे रहा है।

यह कैसे मोड बदलने के बिना दिखाने के लिए प्राप्त करने के लिए पर कोई भी विचार?

नोट: एचटीएमएल 5 बॉयलरप्लेट और मॉडर्निजर का उपयोग करना।

संपादित करें: है कि मैं Modernizr का उपयोग कर रहा गया है, और मैं अपने परीक्षक में गलत बटन क्लिक किया। यह IE9 में काम नहीं कर रहा है, लेकिन मुझे नहीं लगता कि यह संबंधित है।

सीएसएस:

#links li a { 
font-size: 24px; 
text-shadow: 0 3px 3px #102530, 0 3px 3px #102530; 
/* For IE 8 */ 
-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=90, Color='#102530')"; 
/* For IE 5.5 - 7 */ 
filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=90, Color='#102530'); 
filter:DropShadow(Color=#102530, OffX=0, OffY=3); 
zoom: 1; 
} 

एचटीएमएल

<ul id="links"> 
    <li><a href="#"/>Text</a></li> 
</ul> 
+0

मुझे लगता है कि आप केवल एक बार 'फ़िल्टर' का उपयोग कर सकते हैं, और यदि आप एक से अधिक प्रभाव चाहते हैं, तो अलग करने के लिए अल्पविराम का उपयोग करें। हालांकि 100% निश्चित नहीं है। – Shaz

+3

मैं विश्वास नहीं कर सकता मैं बूट कर रहा हूँ [Windows XP मोड] (https://www.microsoft.com/windows/virtual-pc/default.aspx) इस के लिए ... – BoltClock

+0

मैं केवल एक फिल्टर का उपयोग कर रहा आईई के लिए। मैं पहले अल्पविराम से अलग 'टेक्स्ट-छाया' का उपयोग करता हूं, लेकिन फिर दो फॉल-बैक हैं, आईई 8 के लिए एक और आईई 5.5-7.0 के लिए एक है, लेकिन आईई 8 फॉलबैक संगतता मोड के बिना काम नहीं कर रहा है। संपादित करें: धन्यवाद BoltClock, haha ​​ –

उत्तर

3

एक वेबसाइट जरूरी हर ब्राउज़र में ही दिखाई नहीं होना चाहिए। प्लस एमएस फिल्टर बकवास हैं। मैं Modernizer का उपयोग करने की सिफारिश करता हूं जो IE8 के लिए एक अलग समाधान लागू करता है।

यह सिर दर्द से आप की बचत होगी :)

+0

मैं आधुनिकता का उपयोग कर रहा हूं, लेकिन गैर-अर्थपूर्ण नहीं जोड़ूंगा अगर मैं इससे बच सकता हूं तो मार्क-अप। –

+29

http://dowebsitesneedtolookexactlythesameineverybrowser.com/ – Shaz

+0

यदि कुछ भी अर्थपूर्ण नहीं है तो यह एमएस फ़िल्टर है। आधुनिकीकरण कक्षाएं उतनी मान्य हैं जितनी आप प्राप्त कर सकते हैं। – Maverick

11

मैं Modernizer (भी heygrady's polyfill के साथ) की कोशिश की। मैंने cssSandpaper की कोशिश की। मैंने CSS3PIE की कोशिश की। लेकिन उनमें से कोई भी मुझे इंटरनेट एक्सप्लोरर 8 में एक टेक्स्ट-छाया प्रदर्शित नहीं करता है (CSS3PIE में text-shadow नहीं है)। मैंने double-markup method भी कोशिश की। लेकिन वह वास्तव में यह नहीं हो सकता है।

और फिर मुझे Whykiki's blog post मिला और display: block; के साथ संयोजन में filter: dropshadow(color=#000000, offx=2, offy=2); जोड़ा गया। और बस। आप में से कुछ इसे सक्रिय करने के लिए display: block; के बजाय zoom: 1; आज़मा सकते हैं। filter: glow(color=#000000,strength=2); भी काम करता है। जैसा कि आप देखेंगे, एमएस ड्रॉपशैडो धुंध के साथ नहीं आता है। में इसके साथ जी सकता हूँ।

h1 { 
    color: #fce934; 
    text-shadow: 2px 2px 2px #000000; 
    -moz-text-shadow: 2px 2px 2px #000000; 
    -webkit-text-shadow: 2px 2px 2px #000000; 
    filter: dropshadow(color=#000000, offx=2, offy=2); 
    display: block; /* that's the important part */ 
} 
+0

यह चयनित एवर – Daan

+0

सुझाव के लिए धन्यवाद ... मेरे आईई 8 मुद्दे के लिए बहुत अच्छा काम किया जाना चाहिए। – user2662680