Javascript CSS记事

注:"elm"代表某个DOM元素,"xxx"代表某个CSS属性

一、elm.style.xxx  只能获取内联样式里的值
要想获得正确的css值:
IE:elm.currentStyle[xxx]
W3C标准:document.defaultView.getComputedStyle(elm,"")[xxx]
注意:用IE方法返回值可能不是数字,而是auto;用w3c的方法总是会返回数字+单位

三、offsetLeft
1.浏览器是否会把body的各个属性值(margin,padding,border)包括在offsetLeft内?

  IE6/7 IE8 Firefox
margin-left
padding-left
border-left
2.父元素的属性值也会包括在offsetLeft内
3.对于元素自身的属性值,只有margin-left会被包括在offsetLeft内
4.在元素 display:none 情况下 offsetLeft 的值:   IE6/ 7:-1     IE8/ Firefox:0
5.visibility:hidden不会影响offsetLeft
6.body的offsetLeft值:
   A.IE6/7会把body的margin-left包括在其offsetLeft内
   B.若body有宽度为x的边框(border),在Firefox里body的offsetLeft会变成-x

四、offsetTop
情况与offsetLeft一样

五、offsetWidth和offsetHeight
在所有主流浏览器里,这两个属性的值都是:border+padding+width

你可能感兴趣的:(Javascript)