2011-12-22 20 views
30

नीचे उत्तरदायी डिजाइन की ओर अग्रसर है, मैं छवियों के लिए% s, उदा .:ऊंचाई: Internet Explorer 8 में ऑटो और

#example img { 
    width: 100%; 
    height: auto; 
    max-width: 690px; // Width of the image uploaded. 
} 

यह महान काम करता है, का उपयोग कर रहा इंटरनेट एक्सप्लोरर 8 और नीचे में छोड़कर। क्या यह height: auto के कारण CSS3 का हिस्सा है, जो केवल आईई 9 के बाद समर्थित है?

और सबसे महत्वपूर्ण हिस्सा ... इस समस्या के आसपास किसी भी तरह के सुझाव? एकमात्र चीज जिसे मैं अब तक सोच सकता हूं वह इसे अधिकतम ऊंचाई प्रदान करना है।

धन्यवाद

उत्तर

57

इस प्रयास करें:

img { 
    width: inherit; /* Make images fill their parent's space. Solves IE8. */ 
    max-width: 100%; /* Add !important if needed. */ 
    height: auto; /* Add !important if needed. */ 
} 

या:

img { max-width:100%; height: auto; } /* Enough everywhere except IE8. */ 
@media \0screen {img { width: auto }} /* Prevent height distortion in IE8. */ 

दोनों समाधान काम करते हैं। अंतर यह है कि width:inherit छवियों को उनके माता-पिता की जगह भरते हैं जबकि width:auto उन्हें उनके वास्तविक आयामों पर अधिकतम करता है। fit.css

+1

केवल मेरे लिए काम करने वाली चीज़ यह है: '@media \ 0screen {img {width: auto}}/* IE8 में ऊंचाई विरूपण को रोकें। */' – jamietelin

+2

यह सिर्फ आईई 8 से बहुत अधिक हल करता है। मेरे लिए आईई 11 में एक मुद्दा फिक्स्ड। क्या झंझट है। –

+1

यह आईई 11 में भी मेरे लिए हल किया गया। पहली बार "चौड़ाई: वारिस" जोड़ने से इसे ठीक नहीं किया गया। रायनवे के स्पष्टीकरण के लिए धन्यवाद (SO HELPFUL !!!) मुझे एहसास हुआ कि मुझे छवि के कंटेनर को संशोधित करने की आवश्यकता है और इसलिए मैंने इसे "चौड़ाई: 100%" भी दिया। मेरे पास शीर्ष पर एक छवि है और इसके शीर्ष पर टेक्स्ट चाहिए, इसलिए यहां कोड है जिसके साथ मैं समाप्त हुआ: .containerBox { स्थिति: रिश्तेदार; डिस्प्ले: इनलाइन-ब्लॉक; चौड़ाई: 100%; } और फिर छवि के लिए: .img { प्रदर्शन: ब्लॉक; अधिकतम चौड़ाई: 100%; ऊंचाई: ऑटो; मार्जिन: ऑटो; पैडिंग: ऑटो; चौड़ाई: वारिस; } – seizethecarp

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