2012-09-09 8 views
6

ठीक है तो प्रश्न में वेबसाइट यह है:मेरा पृष्ठ व्यूपोर्ट/मीडिया क्वेरीज़ के साथ भी एंड्रॉइड पर सही आकार में क्यों प्रदर्शित नहीं होता है?

अब यदि आप इस वेबसाइट पर ध्यान देते हैं, तो सफेद पृष्ठभूमि div का संकल्प y4586xx लंबा 445px है। यह भी तरल पदार्थ है इसलिए यदि आप इसे कम करते हैं, तो यह विभिन्न आकारों के साथ अलग दिखाई देगा। (यदि आप एक सेल फोन पर हैं जिसमें 400 पीएक्स की तुलना में छोटी चौड़ाई है, तो यह वास्तव में अलग-अलग छवियां दिखाएगी)।

ठीक है, लेकिन बिंदु यह है कि यह पृष्ठ नीचे दिखाए गए अनुसार एंड्रॉइड डिवाइस पर सही नहीं दिख रहा है।

enter image description here

कि फोन, कि 480px गुणित एक्स 800px ऐसे ही वेबसाइट प्रदर्शित कर रहे हैं हैं कि प्रीव्यूअर में सभी अन्य फोन के साथ। वेबसाइट, जैसा कि आप देख सकते हैं कि आप उस पर क्लिक करते हैं, अधिकतम 686 पीएक्स लंबा है, तो हेक इस मोबाइल डिवाइस पर पूरे पृष्ठ को क्यों नहीं दिखा रहा है?

उस "playplanet" लोगो का आकार वास्तव में 180px है और यह लगभग पूरी चौड़ाई भरता है और उस फोन की चौड़ाई 480px भर में आपूर्ति की जाती है।

क्या मुझे यहां कुछ याद आ रही है? ,

<meta name="HandheldFriendly" content="true" /> 
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> 

ये डिवाइस की वास्तविक चौड़ाई के रूप में पृष्ठ प्रदर्शित करने के एंड्रॉयड ब्राउज़र को बताने के लिए अपेक्षा की जाती है:

आप स्रोत कोड को देखो, तो आप देखेंगे कि मैं निम्नलिखित मेटा टैग जोड़ा इसलिए इसे इसे 480 पीएक्स एक्स 800 पीएक्स (सैमसंग गैलेक्सी एस 2 480 पीएक्स एक्स 800 पीएक्स) के रूप में दिखाने के लिए कहा जाना चाहिए, लेकिन वास्तविकता में यदि आप स्क्रीनशॉट देखते हैं, तो वास्तव में यह इसे आधा के रूप में प्रदर्शित कर रहा है क्योंकि लोगो केवल 180px है और यह लगभग पूरी स्क्रीन भर गया।

यह पूरी तरह फिट होना चाहिए। मजेदार बात यह है कि वास्तव में 400px चौड़ाई लेआउट से छोटा मेरा छोटा फीचर फोन आकार (240 x 320 या इसके विपरीत) पर पूरी तरह से काम करता है, लेकिन यह बड़ा मुझे समस्याएं पैदा कर रहा है।

+0

'व्यूपोर्ट आकार परिभाषित करना' देखें http://developer.android.com/guide/webapps/targeting.html जो बताता है कि ब्राउजर डिफ़ॉल्ट रूप से "ओवरव्यू मोड" पर डिफ़ॉल्ट है (800 पिक्सेल)। –

+0

हाँ ओवरव्यू मोड का अर्थ है कि यह ज़ूम आउट हो गया है। मैंने व्यूपोर्ट जोड़ा है, जैसा कि आप ऊपर देख सकते हैं कि ओवरव्यू मोड को हटा देना चाहिए। यहां समस्या यह है कि यह ज़ूम इन है .. यह Droid डिवाइस को वास्तव में 480px की तरह दिखता है, लेकिन शायद इसके बारे में आधा, जब मैंने जो व्यूपोर्ट जोड़ा है उसे 480 बनाना चाहिए, आधा नहीं। क्या तुम देख रहे हो क्या कह रहा हूँ? – king

+0

मेरे ऊपर जो लोगो है, वह वास्तव में 200px की तरह दिखता है, जब मैं जिस डिवाइस का उपयोग कर रहा हूं वह वास्तविक है 480px – king

उत्तर

11

क्या आपने target-densityDpi=device-dpi को आजमाया है?

this article से उद्धरण: एंड्रॉइड टीम ने एक कस्टम मेटा व्यूपोर्ट प्रॉपर्टी लागू की है ताकि आप उच्च रिज़ॉल्यूशन (एचडीपीआई) स्क्रीन के लिए ब्राउज़र स्केलिंग को अनुकूलित कर सकें। सीएसएस "पीएक्स" इकाई किसी डिवाइस के वास्तविक पिक्सल से भिन्न हो सकती है, जैसे ब्राउज़र "स्केल" छवियों और आपके अनुरोध के मुकाबले बड़े आकार के फ़ॉन्ट्स। इससे भी बदतर, यह एक गैर-पूर्णांक स्केलिंग कारक (उदाहरण के लिए 1.5x ज़ूम, 320px से 480px स्केल करने के लिए) का उपयोग कर रहा है जो छवियों को वास्तव में अजीब लग रहा है।

इसके अलावा, इस introduction to meta viewport में "लक्ष्य घनत्व सेट करना" अनुभाग के नीचे उदाहरण आपके मामले की तरह दिखता है।

<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, target-densityDpi=device-dpi"> 
+2

यह। एक पिक्सेल एक पिक्सेल नहीं है, और 480x800 फोन ब्राउज़र में 320x5xx हैं। (http://www.quirksmode.org/blog/archives/2010/04/a_pixel_is_not.html) – mddw

+0

ठीक है ... तो मुझे चीज़ों को स्केल करने के लिए क्या उपयोग करना चाहिए या उन्हें जिस तरह से बनाना चाहते हैं? मैं डीपीआई की अवधारणा को समझता हूं, लेकिन यह अभी भी जवाब नहीं देता है कि यह शैली का सबसे अच्छा तरीका – king

+0

है यदि पीएक्स काम नहीं करता है ... तो क्या? आप फोंट के साथ पॉटेल कैसे करते हैं? वे सब कुछ काम करते हैं। मुझे "ईएमएस" के बारे में पता है, लेकिन यह सिर्फ ईएमएस नहीं है कि कितने गुणात्मक समय पिक्सेल आकार है, इसलिए हकीकत में यह कहने का एक अलग तरीका है कि यह पीएक्स के आकार का एक्स एमटी है? – king

1

स्क्रीनशॉट आप देख रहे हैं दोषपूर्ण है:

यहाँ अद्यतन मेटा है। यह आपकी साइट को 240px x 400px रिज़ॉल्यूशन पर प्रदर्शित कर रहा है जो मानक एलजी और सैमसंग स्मार्टफोनों में से कई है। गैलेक्सी [जैसा कि आप इंगित करते हैं] स्पष्ट रूप से उस पर उच्च रिज़ॉल्यूशन है। मेरा सुझाव उस सेवा को बग की रिपोर्ट करना होगा जिसका आप उपयोग कर रहे हैं और जब तक वे इसे सही न करें, परीक्षण के लिए एक और समान फोन का उपयोग करने का प्रयास करें। सही रिज़ॉल्यूशन वाले किसी अन्य एंड्रॉइड फोन को काम करना चाहिए, क्योंकि वेबपृष्ठों को प्रत्येक एकल एंड्रॉइड डिवाइस के लिए बहुत अधिक प्रदर्शित किया जाता है, जो संकल्प और अभिविन्यास को संसाधित करता है।

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