input注意事项

一、更改place-holder颜色

  input::-webkit-input-placeholder {
  color: #D6D0CA !important; /* WebKit browsers /
  }
  input:-moz-placeholder {
  color: #D6D0CA !important; / Mozilla Firefox 4 to 18 /
  }
  input::-moz-placeholder {
  color: #D6D0CA !important; / Mozilla Firefox 19+ /
  }
  input:-ms-input-placeholder {
  color: #D6D0CA !important; / Internet Explorer 10+ */
  }
  知识点:单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3伪元素。
  css伪类:CSS 伪类用于向某些选择器添加特殊的效果。
  css伪元素:CSS 伪元素用于向某些选择器设置特殊效果。
  伪元素由双冒号和伪元素名称组成。双冒号是在当前规范中引入的,用于区分伪类和伪元素。但是伪类兼容现存样式,浏览器需要同时支持旧的伪类,如:first-line,:first-letter,:before,:after等等。因此对于css2之前已经有的伪元素两种写法的作用是一样的,但是为了兼容IE浏览器还是使用单冒号的写法;

二、js对input属性checked操作

  input中checked属性更改在js中最好用prop

  对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。(checked属于固有属性)

  对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。

三、

  textarea中间不要有空格,空格会在文本框里算字数。另外resize:none 这个属性也属于必带。

四、监听input

  对支持oninput的浏览器用oninput,其他浏览器(IE6/7/8)使用onpropertychange:

  oninput事件与onpropertychange事件的区别: 
  oninput事件是IE之外的大多数浏览器支持的事件,在value改变时触发,实时的,即每增加或删除一个字符就会触发,然而通过js改变value时,却不        会触发;onpropertychange事件是任何属性改变都会触发的,而oninput却只在value改变时触发,oninput要通过addEventListener()          来注册,onpropertychange注册方式跟一般事件一样。(此处都是指在js中动态绑定事件,以实现内容与行为分离) 
 
  oninput与onpropertychange失效的情况: 
    (1)oninput事件:a). 当脚本中改变value时,不会触发;b).从浏览器的自动下拉提示中选取时,不会触发。 
    (2)onpropertychange事件:当input设置为disable=true后,onpropertychange不会触发。 
var ie = !!window.ActiveXObject;  
if(ie){  
    object.onpropertychange = fn;  
}else{  
    object.addEventListener("input",fn,false);  
}  
原文地址:https://www.cnblogs.com/hjsblogs/p/5328126.html