你是不是还在不厌其烦地为每种表单元素(input)类型(type)加上相应的class,(text、password、file...),Firefox, Opera等可以支持属性选择器input[type="???"]及其伪类:focus,那IE怎么办?我们还有javascript。
遍历所有的input元素
var input= document.getElementsByTagName("input");
for (var i = 0; i < input.length; i++)
{
input[i].className = input[i].type;
}给相应type的input定义一个className,名称等同于type,(type="password"则它的class="password")。focus的效果可以用onfocus和onblur
input[i].onfocus = function() {
this.className = this.className + " " + this.className + "focus";
}
input[i].onblur = function() {
this.className = this.type;
}然后定义相应事件下的样式,比如.textfocus, .passwordfocus等。最后你当然要判断一下,因为Firefox, Opera不需要这些代码的支持,所以
window.onload = function() {
if (document.all && !window.opera) //判断是否为IE
{
styleform();
}
}具体效果看这里

不错的想法,可以把我最近的一些想法实现了,谢谢!
用上了,谢谢老兄啦