// 客户区大小
document.documentElement.clientWidth // 浏览器可视窗口的宽度(获取真实宽度)
document.documentElement.clientHeight // 浏览器可视窗口的高度(获取真实高度)
document.body.clientWidth // body有margin,无法获取真实的宽度
document.body.clientHeight // body有margin,无法获取真实的高度
// 元素占有可见空间
clientWidth 获取元素的宽度 width+padding-滚动条宽度(17px)
clientHeight 获取元素的高度 height+padding-滚动条高度(17px)
offsetWidth 元素自身的宽度 width+padding+border
offsetHeight 元素自身的高度 height+padding+border
// 元素到边界的偏移
offsetLeft 元素左边框距离父元素的距离 // 如果父级没有定位,就是相对于浏览器窗口。如果有定位,是对有定位的父级元素)
offsetTop 元素上边框距离父元素的距离 // 如果父级没有定位,就是相对于浏览器窗口。如果有定位,是对有定位的父级元素)
// 滚动属性
scrollHeight, scrollWidth // scrollHeight返回的是元素的实际内容的高度,值=子元素的height值+元素的padding-top+元素的padding-bottom
scrollTop, scrollLeft // 纵向或者横向滚动条位置,可获取可设置,当给浏览器设置滚动条位置时,document.documentElement.scrollTop = 300 ;
document.body.scrollTop = 300 ;这两个都需要设置,处理兼容问题
// 相对当前视口所在的固定定位位置
getBoundingClientRect() // 这是方法,里边几个属性,自行打印查看其他的自行比较查看,固定位置是X/Y,或者是left/top