Form Stillerinde IE Sorunu

CSS kullanarak form elemanlarına verilen [type=text] şeklindeki stiller maalesef IE (özelikle IE6) sorun yaratır. IE bu şablonları tanımaz. Örnek olarak;

.form input[type=text] { …… }

Yukarıdaki gibi kodları IE a anlatmak için birçok yöntemi, değişikliği denedim ancak başarılı olamadım. İmdadıma ise JavaScript yetişti. İşlem oldukça basit, ziyaretçimizin tarayıcı tipi şayet IE ise devreye JS kodları ve IE için oluşturulmuş CSS sayfası girecek. Devreye giren JS kodları ile form elemanlarının birer şablonu olduğunu IE ye hatırlatıp, bu şablona göre formumuzu göstermesini sağlayacağız.

Kullanılacak JS kodları aşağıdaki gibi olacak; (iecss.js gibi kaydedilebilir)

// IE için form elemanları
function changeClasses(currentdoc){
var inputElements = currentdoc.getElementsByTagName(’input’);
for (var i=0; i<inputElements.length; i++){
if(inputElements[i].type == “submit”){ inputElements[i].className = inputElements[i].className + ” submitbutton”;
} else if (inputElements[i].type == “checkbox”){ inputElements[i].className = inputElements[i].className + ” checkbox”;
} else if (inputElements[i].type == “radio”){ inputElements[i].className = inputElements[i].className + ” radio”;
} else if (inputElements[i].type == “text”){ inputElements[i].className = inputElements[i].className + ” textbox”;
} else if (inputElements[i].type == “password”){ inputElements[i].className = inputElements[i].className + ” password”;
} else if (inputElements[i].type == “file”){ inputElements[i].className = inputElements[i].className + ” file”;
}
}
}

Dosyayı devreye sokmak için kullanılacak kodlar; (<head></head> etiketleri arasına)

<!–[if lte IE]>
<script type=”text/javascript” src=”ie6css.js” ></script>
<![endif]–>

Yine IE ile kullanılacak CSS dosyası; (<head></head> etiketleri arasına)

<!–[if lte IE ]>
<link rel=”stylesheet” type=”text/css” href=”ie.css” />
<![endif]–>

Örnek CSS kodları; (ie.css)

input.textbox {
border:1px solid #dfe6ee;
background-color:#e8edf3;
width:220px;
padding:3px;
margin-bottom:5px;
}

input.password {
border:1px solid #ccc;
background-color:#fff;
width:220px;
padding:3px;
margin-bottom:5px;
}

Hepsi bu kadar…

BeğenmedimBeğendim (Henüz değerlendirilmedi)

Yorum Yapın





XHTML:: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Puan sıralaması (alttan yukarı) Puan Sıralaması (yukarıdan alta) Ne yapıyorum? - twitter
Oyunlar   Kız Oyunları  OYunlar Kız Oyunları  Two Player Games  SavaÅŸ Oyunları SavaÅŸ Oyunu  Kız Oyunları  Oyunlar