نسبة عرض عنصر الطفل في الاطلاق وضع الوالدين في Internet Explorer 7

StackOverflow https://stackoverflow.com/questions/6

سؤال

لدي المتمركزة على الاطلاق div التي تحتوي على العديد من الأطفال ، واحدة منها نسبيا وضعه div.عند استخدام على أساس نسبة مئوية العرض على الطفل div, فإنه ينهار إلى '0' عرض على Internet Explorer 7, ولكن ليس على فايرفوكس أو سفاري.

إذا كنت تستخدم عرض بكسل, أنه يعمل.إذا كان الوالد هو نسبيا وضع نسبة العرض على الطفل يعمل.

  1. هل هناك شيء لا أعرفه ؟
  2. هل هناك طريقة سهلة لإصلاح هذا إلى جانب بكسل على أساس العرض على الطفل ؟
  3. هل هناك مساحة CSS المواصفات التي تغطي هذا ؟
هل كانت مفيدة؟

المحلول

الوالد div يحتاج إلى تعريف width, إما بالبكسل أو بالنسبة المئوية.في Internet Explorer 7, الأم div يحتاج تعريف width الطفل مئوية divs للعمل بشكل صحيح.

نصائح أخرى

هنا بعض التعليمات البرمجية.وأعتقد أن هذا هو ما كنت أبحث عنه.التالي يعرض نفسه تماما في فايرفوكس 3 (mac) و IE7.

#absdiv {
  position: absolute; 
  left: 100px; 
  top: 100px; 
  width: 80%; 
  height: 60%; 
  background: #999;
}

#pctchild {
  width: 60%; 
  height: 40%; 
  background: #CCC;
}

#reldiv {
  position: relative;
  left: 20px;
  top: 20px;
  height: 25px;
  width: 40%;
  background: red;
}
<div id="absdiv">
    <div id="reldiv"></div>
    <div id="pctchild"></div>
</div>

أي قبل 8 زمني جانب مربع نموذج أبرزها يخلق مشكلة على أساس النسبة المئوية الاعراض.في حالتك هنا المتمركزة على الاطلاق div بشكل افتراضي لا العرض.وسوف يكون عرضه عملت على أساس بكسل عرض محتواه سيتم احتساب بعد المحتويات المقدمة.لذلك عند نقطة أي لقاءات ويجعل الخاص بك نسبيا وضعه div الأم لديه عرض من 0 وبالتالي لماذا نفسها ينهار إلى 0.

إذا كنت ترغب في مزيد من العمق في مناقشة هذا جنبا إلى جنب مع الكثير من أمثلة العمل ، الاوز هنا.

لماذا لا نسبة عرض الطفل في الاطلاق وضع الوالدين في العمل في IE7?

لأنه مفجر الإنترنت

هل هناك شيء لا أعرفه ؟

أن رفع زميلك / العملاء الوعي بأن أي سيء.

هل هناك حل سهل إلى جانب بكسل على أساس العرض على الطفل ؟

استخدام em الوحدات كما هي أكثر فائدة عند إنشاء السائل تخطيطات كما يمكنك استخدامها الحشو هوامش وكذلك أحجام الخطوط.حتى مساحة بيضاء تنمو وتتقلص نسبيا إلى النص الخاص بك إذا كان حجمها (الذي هو في الحقيقة ما تحتاج إليه).لا أعتقد النسب تعطي أدق السيطرة من ems;لا يوجد شيء لوقف لكم تحدد في المئة من ems (0.01 م) وسيقوم المتصفح تفسير ما تراه مناسبا.

هل هناك مساحة CSS المواصفات التي تغطي هذا ؟

لا شيء, بقدر ما أتذكر em's %'s يقصد أحجام الخط وحدها مرة أخرى في CSS 1.0.

أعتقد أن هذا له علاقة مع الطريقة hasLayout الملكية تنفذ من خلال المتصفح القديمة.

هل جربت الكود الخاص بك في IE8 لمعرفة إذا كان يعمل هناك أيضا ؟ IE8 لديه المصحح (F12) و يمكن أيضا تشغيل في IE7 الوضعية.

على div يحتاج إلى تعريف العرض:

<div id="parent" style="width:230px;">
    <div id="child1"></div>
    <div id="child2"></div>
</div>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top