我的B/S系统前期没做CSS,现在来补,但是页面内有太多的input标签,但type类型有很多种,比如button,text,textarea, radio等等,有没有办法在CSS里面直接控制各种类型啊?实在不想对具体某类型的标签加上class,太多了
试了试CSS的属性选择器不行,现在只能试试JS来控制了,但如何控制页面上的相同类型的标签呢?比如<input type=text>类型的一系列标签.....
<input id="Button1" type="button" value="button" />
<input id="Text1" type="text" />
<input id="Button1" type="button" value="button" />
<input id="Text21" type="text" />
<input id="Text31" type="text" />

解决方案 »

  1.   

    <script>
    window.onload=function(){
    var list = document.getElementsByTagName("INPUT");
    for(var i=0;i<list.length;i++){
    switch(list[i].type){
    case "text": list[i].className= "inputtext";break;
    case "button": list[i].className= "inputbutton";break;
    case "file": list[i].className= "inputfile";break;
    }
    }
    }
    </script>
      

  2.   

    css 可以这样
    input[type="button"] ....
    不过 IE 不支持选择器...IE 只能 document.getElementsByTagName()
    然后再从集合中进行筛选赋 className 属性...实现自己搞..
      

  3.   

    THX,不过我把CSS设定复杂点就出问题了,帮我看看如何改写下面的设置正确吧?.button{
    event:expression(
    onmouseout = function()
    { this.style='BORDER-RIGHT: #2C59AA 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #2C59AA 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#C3DAF5); BORDER-LEFT: #2C59AA 1px solid; CURSOR: hand; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: #2C59AA 1px solid' },
    onmouseover = function()
    {   this.style='BORDER-RIGHT: #2C59AA 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #2C59AA 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#D7E7FA); BORDER-LEFT: #2C59AA 1px solid; CURSOR: hand; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: #2C59AA 1px solid'},
    onmousedown = function()
    { this.style='BORDER-RIGHT: #FFE400 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #FFE400 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#C3DAF5); BORDER-LEFT: #FFE400 1px solid; CURSOR: hand; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: #FFE400 1px solid'},
    onmouseup = function()
    { this.style='BORDER-RIGHT: #2C59AA 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #2C59AA 1px solid; PADDING-LEFT: 2px; FONT-SIZE: 12px; FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#C3DAF5); BORDER-LEFT: #2C59AA 1px solid; CURSOR: hand; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: #2C59AA 1px solid'}
    )}
      

  4.   

    你定义样式表的时候可以这样定义啊
    #button1{
        color:#006666;
    }
    这样就把id为button1的全部元素的样式都指定了还有,你也可以:
    input{
        color:#006666;
    }
    这样就把所有input类型的元素的样式全部定义了试试看吧