offsetLeft和style.left的区别

本文介绍了offsetLeft和style.left的定义及使用方法,详细解释了两者之间的区别,包括返回值类型的不同、是否可被设置以及依赖的CSS定位属性等。

1.定义:
offsetLeft: 获取的是当前对象左侧距离父对象左侧的值(均不包含border);
style.left: 获取或设置相对于具有定位属性(position定义为relative)的父对象的左边距;
还有个clientLeft:获取的是当前对象的offsetLeft属性值和到当前窗口左边的真实值之间的距离,.

2.如果父对象的position定义为relative,子对象的position定义为absolute,那么子对象的style.left的值是相对于父对象的值,等同于offsetLeft的值.
3.区别:

  • style.left 返回的是字符串"50px",offsetLeft返回的是数值50,如果需要对取得的值进行计算,用offsetLeft比较方便,不需要用parseInt(style.left).
  • style.left是可以设置或更改,offsetLeft是只能获取不能更改的,因此要改变子对象的位置,只能修改style.left的值。
  • style.left的值需要事先定义,而且要定义相应对象的标签里(即内联style),就如上面用内嵌style的话,获取不到style.left的值.但是offsetLeft则可以取到.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值