使用JavaScript修改外层div宽度带动内层绝对定位div位移失败如何解决
问题原因
div不属于自带原生width属性的元素,你直接对document.getElementById('test').width赋值,只是给DOM对象新增了一个自定义属性,不会作用到元素的渲染样式上,外层div的实际宽度没有发生变化,因此内层右对齐的绝对定位元素不会产生位移。你之前读取到的width值是你自己设置的自定义属性值,不是元素实际渲染的宽度。
解决方案
修改resizeouter函数,通过元素的style对象来修改宽度样式即可:
function resizeouter(newsize){ document.getElementById('test').style.width = newsize + "px"; }
如果需要读取元素实际渲染的宽度,可以使用getComputedStyle(document.getElementById('test')).width或者offsetWidth属性获取。
内容的提问来源于stack exchange,提问作者Mark
相关产品推荐
相关产品推荐

