2012-06-30 16 views
5

बिना जिम्मेदार बताते हैं एक परिदृश्य में जहाँ सीएसएस विशेषता इकाई याद आ रही है (px, उन्हें, pt,%) पर विचार करें:निवर्तन इकाई

<body> 
    <div 
     style= "width:170; 
       border:1 dotted PaleGreen; 
       background-color:MistyRose"> 
     The quick brown 
    </div> 
</body> 

सवाल:

  1. यह क्यों वापस आने जाएगा पीएक्स के लिए? पिक्सेल हमेशा एक पसंदीदा इकाई है? क्या डब्ल्यू 3 सी वर्किंग ड्राफ्ट या सिफारिश में कोई नियम परिभाषित किया गया है?
  2. क्या कोई नियम है जो एक UA के लिए एक पसंदीदा इकाई में फॉलबैक करना अनिवार्य बनाता है?
    • इंटरनेट एक्सप्लोरर: असामान्य मोड में (IE6,5,4 ..) चौड़ाई और सीमा-चौड़ाई पिक्सल पर वापस आने के लिए इस्तेमाल किया
    • ऊपर के उदाहरण है, जो निम्न में से एक सही व्यवहार है को देखते हुए। चूंकि आईई 7 (वर्तमान में, आईई 10 आरपी) इकाई के गायब होने पर यह पूरे नियम को अनदेखा करता है। इसलिए दोनों नियमों को नजरअंदाज कर दिया गया।
    • फ़ायरफ़ॉक्स 13: उपरोक्त उदाहरण में पीएक्स पर चौड़ाई फॉलबैक, लेकिन सीमा-चौड़ाई को नजरअंदाज कर दिया गया था।
    • क्रोम 1 9, ओपेरा 12, सफारी 5.1.2: दोनों चौड़ाई और सीमा-चौड़ाई पिक्सबैक पीएक्स पर।

नोट: माइक्रोसॉफ्ट कनेक्ट पर, उन्होंने कहा:

मुद्दा आप रिपोर्ट कर रहे हैं डिजाइन कर रहा है। मानक मोड में आईई 10 सीएसएस मानकों के अनुपालन में इकाई के बिना चौड़ाई या ऊंचाई को अनदेखा करता है। इकाई वैकल्पिक नहीं है।

उत्तर

13

मुझे अपने एचटीएमएल में एक डॉक्टरेट घोषणा नहीं दिखाई देती है, इसलिए मैं केवल यह मान सकता हूं कि आपका टेस्ट पेज क्विर्क मोड में प्रस्तुत किया जा रहा है।

  1. क्यों यह पिक्सल पर वापस आने हैं? पिक्सेल हमेशा एक पसंदीदा इकाई है? क्या डब्ल्यू 3 सी वर्किंग ड्राफ्ट या सिफारिश में कोई नियम परिभाषित किया गया है?

    यह केवल क्विर्क मोड में px पर वापस आ जाएगा (और मुझे केवल कुछ गुणों के लिए विश्वास है)। और हाँ, px पसंदीदा फॉलबैक इकाई है। यह विरासत एचटीएमएल width और height विशेषताओं पर वापस आ गया है जो यूनिट रहित संख्याओं के रूप में पिक्सेल लंबाई स्वीकार करते हैं।

  2. क्या कोई नियम है जो एक यूए के लिए एक पसंदीदा इकाई में फॉलबैक करना अनिवार्य बनाता है?

    नहीं, इसलिए आप जो असंगत व्यवहार देखते हैं। मानक मोड में, हालांकि, एक UA को इकाइयों के बिना लंबाई मूल्यों को अनदेखा करने की आवश्यकता है; यूनिट वैकल्पिक नहीं है, जैसा कि माइक्रोसॉफ्ट कनेक्ट में उल्लिखित है, जिसे आप उद्धृत करते हैं।

    In CSS2.1, सभी गैर-शून्य लंबाई मानों में इकाइयां होनी चाहिए।

    • इंटरनेट एक्सप्लोरर:

    • ऊपर के उदाहरण है, जो निम्न में से एक सही व्यवहार है यह देखते हुए असामान्य मोड में (IE6,5,4 ..) चौड़ाई और सीमा-चौड़ाई इस्तेमाल किया वापस आने की पीएक्स के लिए। चूंकि आईई 7 (वर्तमान में, आईई 10 आरपी) इकाई के गायब होने पर यह पूरे नियम को अनदेखा करता है। इसलिए दोनों नियमों को नजरअंदाज कर दिया गया।

    • फ़ायरफ़ॉक्स 13: उपरोक्त उदाहरण में पीएक्स पर चौड़ाई फॉलबैक, लेकिन सीमा-चौड़ाई को नजरअंदाज कर दिया गया था।
    • क्रोम 1 9, ओपेरा 12, सफारी 5.1.2: दोनों चौड़ाई और सीमा-चौड़ाई पिक्सबैक पीएक्स पर।

    फिर, इस धारणा है कि अपने पृष्ठ quirks मोड में है के आधार पर, मैं इतना ही कह सकता है कि जब तक विनिर्देशों विचित्र व्यवहार का उल्लेख करते हैं, इस तरह के विचित्र व्यवहार के विशिष्ट विवरण में परिभाषित नहीं कर रहे हैं विनिर्देशों (दोनों स्पष्ट और स्पष्ट कारणों के लिए)।

    मैं माइक्रोसॉफ्ट अनुमान लगा रहा हूँ मानकों unitless मूल्यों के लिए व्यवहार को प्रतिबिंबित करने के IE7 + में quirks मोड व्यवहार बदल गया है, quirks मोड के रूप में मौजूद है सभी ब्राउज़रों में (आईई < 6 को छोड़कर) और एक ही अनुचित doctype या कमी के साथ शुरू हो रहा है एक डॉक्टरेट का। मानकों मोड में व्यवहार नहीं बदला है, हालांकि, जहां तक ​​मुझे पता है।

+2

यह एक सही उत्तर है। जब मैंने एचटीएमएल 5 के डॉक्टरेट '' का उपयोग किया, तो सभी उपरोक्त ब्राउज़र चौड़ाई और सीमा को अनदेखा करते हैं। मैं कभी नहीं जानता था कि अन्य ब्राउज़र भी quirks मोड में अलग व्यवहार करते हैं। धन्यवाद! –

0
  1. "पिक्सल" सबसे आम उपयोग इकाई है, तो आम तौर पर वहाँ "सामान्य ज्ञान" का उपयोग करें और "पिक्सल" का उपयोग के रूप में यह वेब डिजाइन में सबसे अधिक इस्तेमाल इकाई है अगर कोई इकाई निर्दिष्ट किया जाता है ब्राउज़र है।
  2. कोई ऐसा नियम नहीं है। ब्राउज़र केवल डिज़ाइन में सबसे अधिक उपयोग की जाने वाली इकाई का उपयोग करते हैं।
  3. आदर्श व्यवहार पीएक्स का उपयोग करना चाहिए और अन्य शैलियों को अनदेखा किए बिना आगे बढ़ना चाहिए, लेकिन ऐसा कोई नियम नहीं है, जब आप अलग-अलग ब्राउज़रों को अलग-अलग चीजें देखते हैं, वे वास्तव में ऐसी त्रुटियों का सामना करने के लिए अपने तर्क को लागू कर रहे हैं, तो कोई नियम नहीं है ऐसे परिदृश्यों में पालन करें। यह ब्राउजर पर निर्भर करता है कि यह क्या करता है।

आपको कभी भी अपनी गलती को सही करने के लिए ब्राउज़र पर भरोसा नहीं करना चाहिए। बेहतर क्रॉस ब्राउजर कॉम्पटिबिलिटी

+0

यह समस्या डॉक्टरेट की कमी के कारण थी। –