点操作只能操控已有的样式不能添加,故使用[]

 

 通过点操作只能操控行内样式

 

 获取计算后的css值:window.getComputedStyle(对象).属性,IE8及以下不兼容

比如给的是10rem ,获取的是计算后的px值

 

getComputedStyle 是只读方法,不能改添值

 

只要是window的方法,不用写window也行

 

IE8及以下 用的是 对象.currentStyle[属性字符串]

 

 

自封装兼容IE的方法:字符串必须放在【】里获取,不能用.

返回属性值;

返回对象样式表:

 

 

 

 

 

 

 

操控元素样式:

需要注意:谷歌浏览器支持getComputedStyle里传入第二个参数,第二个参数为伪元素:

此时获取到的样式为 box里 after伪元素的样式

 

 

 

 

 

 

 

三:获取盒子显示大小

offsetWIdth  offsetHeight

 

 

 clientWidth   clientHeight  (不含border)

 

offsetTop   offsetLeft  距离定位父级顶部 左部的距离:

 

 

 

定位父级是offsetParent:

因为兼容性问题,要学会自封装offsetLeft offsetTop 方法,offsetTop offsetLeft 是一层层向外自身距离定位父级的累加值

 

 

 

clientTop / clientLeft    上边框线 左边框线的 宽度:

 

 

scrollHeight/scrollWidth 滚动的元素高度/宽度,当内容溢出时需要考虑,如果元素没超出,获取到的值与clientWidth/clientHeight一致

 

scrollTop  /  scrollLeft  滚动的高度 宽度

页面滚动:

 

主流浏览器用的是 pageXOffset(水平)  pageYOffset(垂直) 方法,来表示页面能滚动的水平 垂直距离

 

 

IE9及以下:使用document.documentElement.scrollTop 来表示滚动的高度,

 

 

获取页面的滚动高度宽度兼容方法 :  在IE8及以下,标准模式与混杂模式总有一个为0;

return 一个对象  第一个大括号必须跟return 在同一行,否则返回undefined

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

body是最高级,body的定位父级没有 ,值为null

 

一般兼容性代码都会放到额外的js文件,引用时调用即可: