for(var i = 0; i < aBox.length; i++) { if(i < cnum) { aBox[i].style.top = 0 + 'px'; aBox[i].style.left = boxwidth * i + 'px'; aBoxHeight.push(aBox[i].offsetHeight); } else { var minHeight = Math.min.apply(null,aBoxHeight); var minIndex = getIndex(aBoxHeight,minHeight); aBox[i].style.position = 'absolute'; aBox[i].style.top = minHeight+'px'; aBox[i].style.left = aBox[minIndex].offsetLeft+'px'; aBoxHeight[minIndex] +=aBox[i].offsetHeight; } } aBox[i].style.top = 0 + 'px';前面为什么不加上一句 aBox[i].style.position = 'absolute';第一行以外的图片定位都加了的
1 回答
回夢
TA贡献18条经验 获得超5个赞
position:absolute是绝对定位,进行绝对定位之后元素脱离文本流,以父辈往上拥有position:relative属性的元素进行定位。这时候可以使用top left bottom right进行位置定位。
我虽然没看到其余代码,但是可以猜测
循环进行之时能跑进i < cnum这个条件里的 aBox [i]元素应该已经有了position:absolute属性。
所以再次加上这一句等于重复操作。当然加上也不会产生错误,只不过做了无用功。
你可以自己打个断点看看是否是这样。
添加回答
举报
0/150
提交
取消