offsetleft 和 style.left 的区别

offsetLeft 获取的是相对于父对象的左边距;

left 获取或设置相对于 具有定位属性(position定义为relative)的父对象 的左边距;

如果父div的position定义为relative,子div的position定义为absolute,那么子div的style.left的值是相对于父div的值,
这同offsetLeft是相同的;

二者的区别在于:

1.style.left返回的是字符串,如30px,offsetLeft返回的是数值30;

2.style.left是可读写的,而是offsetLeft是只读的,因此如果要改变div的位置,只能修改style.left;

3.style.left的值需要事先定义,否则取到的值为空;而且定义在css里是无法识别的,取到的值将依然为空,只有在html里定义的才有效;

——注:来自慕课上WayneJ老师讲解

 

 
 
 
posted @ 2015-12-18 14:29  Lazymr  阅读(649)  评论(0编辑  收藏  举报