इंटरनेट एक्सप्लोरर 7 पर पूरी तरह से स्थित माता-पिता में प्रतिशत चौड़ाई बाल तत्व

I have an absolutely positioned div containing several children, one of which is a relatively positioned div. When I use a percentage-based width on the child div, it collapses to '0' width on Internet Explorer 7, but not on Firefox or Safari.

अगर मैं पिक्सेल चौड़ाई का उपयोग करता हूं, तो यह काम करता है। यदि माता-पिता अपेक्षाकृत स्थित है, तो बच्चे की प्रतिशत चौड़ाई काम करती है।

  1. क्या मुझे कुछ याद आ रहा है?
  2. इसके लिए पिक्सेल-आधारित चौड़ाई के अलावा इसके लिए कोई आसान फ़िक्स है बच्चे?
  3. क्या सीएसएस विनिर्देश का कोई क्षेत्र है जिसमें यह शामिल है?
0
जोड़ा संपादित
विचारों: 32

4 उत्तर

यहां कुछ नमूना कोड है। मुझे लगता है कि तुम इसे खोज रहे हो। निम्नलिखित फ़ायरफ़ॉक्स 3 (मैक) और आईई 7 में बिल्कुल वही प्रदर्शित होता है।

<div class="snippet" data-lang="js" data-hide="false" data-console="false" data-babel="false"><div class = "स्निपेट-कोड">

 #absdiv {
  स्थिति: पूर्ण;
  बाएं: 100 पीएक्स;
  शीर्ष: 100 पीएक्स;
  चौड़ाई: 80%;
  ऊंचाई: 60%;
  पृष्ठभूमि: # 999;
}

#pctchild {
  चौड़ाई: 60%;
  ऊंचाई: 40%;
  पृष्ठभूमि: # सीसीसीसी;
}

#reldiv {
  स्थिति: सापेक्ष;
  बाएं: 20 पीएक्स;
  शीर्ष: 20 पीएक्स;
  ऊंचाई: 25 पीएक्स;
  चौड़ाई: 40%;
  पृष्ठभूमि: लाल;
}  
 <div id = "absdiv">
    <div id = "reldiv"> </div>
    <div id = "pctchild"> </div>
</div>  
</div></div>
0
जोड़ा

8 से पहले आईई में अपने बॉक्स मॉडल के लिए एक अस्थायी पहलू है जो सबसे महत्वपूर्ण रूप से प्रतिशत आधारित चौड़ाई के साथ एक समस्या पैदा करता है। आपके मामले में यहां डिफ़ॉल्ट रूप से एक बिल्कुल स्थित div की कोई चौड़ाई नहीं है। इसकी चौड़ाई इसकी सामग्री की पिक्सेल चौड़ाई के आधार पर तैयार की जाएगी और सामग्रियों को प्रस्तुत किए जाने के बाद गणना की जाएगी। तो बिंदु पर आईई मुठभेड़ करता है और आपके अपेक्षाकृत स्थान div को प्रस्तुत करता है इसके माता-पिता की चौड़ाई 0 है इसलिए यह स्वयं 0 तक गिर जाती है।

यदि आप इसके कई कामकाजी उदाहरणों के साथ गहराई से चर्चा करना चाहते हैं, तो एक गैंडर यहां < / a>।

0
जोड़ा

प्रतिशत चौड़ाई बच्चे क्यों नहीं है   बिल्कुल तैनात माता-पिता के काम में   आईई 7 में?

क्योंकि यह इंटरनेट एक्सप्लोरर है

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

यही है, आपके सहकर्मी / ग्राहकों की जागरूकता बढ़ाने के लिए आईई बेकार है।

क्या बच्चे पर पिक्सेल-आधारित चौड़ाई के अलावा कोई आसान फिक्स है?

em इकाइयों का उपयोग करें क्योंकि वे तरल लेआउट बनाते समय अधिक उपयोगी होते हैं क्योंकि आप उन्हें पैडिंग और मार्जिन के साथ-साथ फ़ॉन्ट आकार के लिए भी उपयोग कर सकते हैं। इसलिए यदि आपका आकार बदलता है तो आपकी सफेद जगह आनुपातिक रूप से बढ़ जाती है और घट जाती है (जो वास्तव में आपको चाहिए)। मुझे नहीं लगता कि प्रतिशत ईएमएस से बेहतर नियंत्रण देते हैं; ईएमएस (0.01 एम) के सौवां भाग में निर्दिष्ट करने से रोकने के लिए कुछ भी नहीं है और ब्राउज़र फिट बैठेगा जैसा कि यह उपयुक्त दिखता है।

क्या सीएसएस विनिर्देश का कोई क्षेत्र है जो इसे कवर करता है?

कोई नहीं, जहां तक ​​मुझे याद है em और% का फ़ॉन्ट केवल फ़ॉन्ट आकार के लिए सीएसएस 1.0 पर था।

0
जोड़ा

मुझे लगता है कि पुराने ब्राउज़र में hasLayout प्रॉपर्टी लागू होने के तरीके से इसका कुछ संबंध है।

क्या आपने आईई 8 में अपने कोड को देखने के लिए कोशिश की है कि क्या वहां भी काम करता है? आईई 8 में एक डीबगर ( F12 ) है और आईई 7 मोड में भी चलाया जा सकता है।

0
जोड़ा