2012-01-09 17 views
10

मैं वास्तव में अब इसकी आवश्यकता नहीं है, लेकिन सिर्फ जिज्ञासा से बाहर के साथ स्केलिंग ...छवि सीएसएस

मान लीजिए हम चाहते हैं कि पूरी तरह से 1920px प्रदर्शित करता है पर और छोटे स्मार्टफोन्स पर अच्छी तरह से काम एक द्रव वेबसाइट लेआउट है। अब मान लें कि हमारे पास छवियां हैं और जाहिर है (जाहिर है?) हम उन्हें स्केल करना चाहते हैं। हम एक सर्वर पर 2560px छवियों अपलोड कर दिया है (क्योंकि जो बैंडविड्थ के बारे में आजकल परवाह करता है) और img टैग करने के लिए width: 100% गुण सेट।

तो हमारे पास दो उपयोगकर्ता हैं: 1920 पीएक्स डिस्प्ले वाले प्रोग्रामर, चलो उसे जो कहते हैं, और स्मार्टफोन के साथ एक महिला छात्र, चलिए उसे नैन्सी कहते हैं (क्योंकि नैन्सी के साथ सब कुछ बेहतर है, है ना?)।

जो और नैन्सी खुश हैं क्योंकि width: 100% का उपयोग करके छवियों के स्केलिंग के साथ हमारी योजना काम करती है, लेकिन क्या होगा यदि हमने छोटी छवियों को 400px चौड़ाई की तरह कुछ भी दिखाने का फैसला किया? नैन्सी कुछ भी नहीं देखेंगे, लेकिन जो के लिए यह एक आपदा होगी।

तो सवाल यह है: हम जो और नैन्सी खुश कर सकते हैं जावास्क्रिप्ट का उपयोग किए बिना?

+3

उन्हें खुश करने के रूप में क्या योग्यता प्राप्त करता है? इसके अलावा, स्मार्टफोन में 2560 पीएक्स छवियों की सेवा करना एक भयानक विचार है। –

+0

वे खुश होंगे अगर हमारी छवि नैन्सी के स्मार्टफ़ोन पर स्केल करेगी और जो स्केलिंग के बिना 400px छवि देखेंगे। –

+0

क्या आपका मतलब है कि आपने '' में छवि की चौड़ाई विशेषता 100% पर सेट की है? – MrMisterMan

उत्तर

22

नहीं क्यों बजाय max-width: 100% के लिए जाते हैं?

यह सभी छवियों कि अकेले स्क्रीन की चौड़ाई की तुलना में छोटे होते हैं और जो कि स्क्रीन भी 100% बदल दिया जाएगा से अधिक व्यापक हैं छोड़ देंगे। समस्या हल हो गई, हर कोई खुश!

+0

यह निश्चित रूप से उत्तरदायी वेब डिज़ाइन में छवियों का पारंपरिक तरीका है। –

+0

क्योंकि यह बहुत आसान होगा, ज़ाहिर है! असल में, आपने मेरे प्रश्न का उत्तर दिया, मैंने कभी भी छवियों के साथ 'अधिकतम-चौड़ाई' का उपयोग नहीं किया है, लेकिन मैंने अभी कोशिश की है और यह ठीक काम करता है। धन्यवाद। –

+6

मैं जोड़ूंगा कि आपको पहलू अनुपात को कम करने से रोकने के लिए छवियों में 'ऊंचाई: ऑटो' जोड़ने की आवश्यकता है (कम से कम मोबाइल ब्राउज़र पर अब मैं उपयोग कर रहा हूं ...) –

2

आप अपने चौड़ाई के आधार पर अलग अलग स्क्रीन करने के लिए विभिन्न चित्रों को भेजने के लिए चाहते हैं, तो आप उन सशर्त मीडिया क्वेरी हम के बारे में सुनने रखने में गोता लगाने चाहिए।
यह एक अच्छा वेबसाइट है: http://webdesignerwall.com/tutorials/css3-media-queries

+0

धन्यवाद, मैं पहले से ही उन्हें लगभग हर जगह उपयोग करता हूं। मैंने सोचा कि क्या होगा यदि ऐसी स्थिति होगी जहां मैं अलग-अलग चित्रों का उपयोग नहीं कर पाऊंगा। –

1

मैं max-width: 100% इस्तेमाल किया रूप में फ़िलिप कहा था, लेकिन मैं यह भी शामिल करने के लिए की जरूरत:

height:auto

अन्यथा ऊंचाई पैमाने पर नहीं होगा।

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