İnternet Explorer ile bir çok sorun yaşıyoruz genelde ie?nin  boyut taramalarında. Bu sorunların kaynağı “hasLayout” olarak  adlandırılan ie kabulü. hasLayout hakkında ayrıntılı bilgi için bu siteye göz  atın. Microsoft bu tanımlamadaki hatasını kabul etti ve ie8 de  “hasLayout” kabulunü bıraktı.  Buna da şükür.    
Ben genelde bu sorun ile özel textbox alanlarını kodlarken  karşılaşıyorum.

yukarıdaki gibi bir tasarımı koda çevirirken
2 | 
 <div class="ic"><input type="text" value="Arama" /></div> | 
 
 
 
CSS kodu
07 | 
 background:url(arama_ardalan.gif) 0 0 no-repeat | 
 
 
 
Örneği görmek için tıklayınız.
Böyle bir kod yazıyorum. Dıştaki div(div.dis) herhangi bir kapsayıcı  div olarak düşünün. Sayfanın diğer bir öğesi yani bu arama kısmı ile  alakası yok. Bu kapsayıcı katmandaki margin tanımı ie?de sorun  çıkarıyor.

Firefox?da yukarıdaki gibi bir görüntü alırken

İnternet Explore 6 ve 7 sürümlerinde yukarıdaki gibi bir görüntü ile  karşılaşıyorum. En dıştaki katmana atadığım margin-left değeri içerideki  elemanımı etkiliyor. Kalıtsal olarak bu değeri alıyor. Sorunu ilk önce “IE?da  İkikat görülen Margin Problemi ve Çözümü” anlattığım gibi bir sorun  olduğunu düşündüm ama değildi. Bu sefer ki farklı bir sorun.  positioniseverything.net sitesinde aynı sorunu görünce anca adını  koyabildim.
Sorun; input alanını kapsayan ebeveyn elemanda hasLayout ve margin  tanımı var ise oluyor. Kaynak kısmında verdiğim sitede bir kaç çözüm  önerisi var. Ancak ben hasLayout sorunlarının en kolay çözüm yolu olan  zoom:1 tanımı ile bu sorunu aştım. Margin tanımı olan elemana zoom:1  tanımı yapınca sorun çözüldü
1 | 
div.dis{ margin-left:65px; zoom:1} | 
 
 
 
Örneği görmek için tıklayınız.

Bu sorun tüm input çeşitlerinde(text, checkbox, radyo buton ve resim)  meydana geliyor, ayrıca textarea?da yaşanıyor bu sorun, ancak select  elemanında bu sorun ile karşılaşılmıyor.
Kaynak
 Kaynak :  CSS Dersleri, Fatih HAYRİOĞLU