как да решим проблема с модела на кутията на IE6 без добавяне на допълнителен div и използване на валиден CSS?

В тази статия http://www.kashit.org/design/css/ultimate-guide-to-techniques-for-cross-browser-css/

в раздел „Коригиране на грешка в модела на IE Box“, пише авторът

IE 6 всъщност може да го направи правилно, ако сте в режим, съвместим със стандартите.

Лошо ли е, ако използваме XHTML 1.0 strict или HTML 5 doctype, този проблем с модела на кутията ще бъде решен автоматично без добавяне на този допълнителен div.

по подразбиране

.box {  
  width:100px;  
  padding:10px;  
   border:2px solid #CCC;  
}

решение за IE6 добавяне на допълнителен div <div class=”box-inner”>

<div class=”box”>  
   <div class=”box-inner”>  
     Testing for box model hack  
   </div>  
</div>

как да реша този проблем с модела на кутията, без да добавям допълнителен div и да използвам валиден CSS.? можем ли да решим това само като добавим doctype, или просто само doctype няма да реши този проблем?


person Jitendra Vyas    schedule 24.10.2010    source източник


Отговори (1)


Не, не е нужно да използвате XHTML или HTML 5, HTML 4 работи добре за влизане в съвместим със стандартите режим.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
person Guffa    schedule 24.10.2010
comment
така че само използването на този html 4 doctype ще получи същия размер за кутия в IE? - person Jitendra Vyas; 24.10.2010
comment
Не трябва ли да добавяме допълнителен div? - person Jitendra Vyas; 24.10.2010
comment
@metal-gear-solid: Да, в съвместим със стандартите режим IE не използва неправилния модел на кутията, така че нямате нужда от допълнителния div. - person Guffa; 24.10.2010
comment
За други типове документи, които можете да използвате, за да поставите IE 6 в стандартен режим, вижте hsivonen.iki.fi/doctype/ #избор - person Paul D. Waite; 24.10.2010