js控制div的top和left 30

现在有100个div,怎么实现每隔10个div换一行?... 现在有100个div,怎么实现每隔10个div换一行? 展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏30(财富值+成长值)
mypcluna
推荐于2017-05-21 · TA获得超过2255个赞
知道大有可为答主
回答量:1273
采纳率:0%
帮助的人:1788万
展开全部
你先说明白了,这些div都是什么定位(肯定不能是static定位)?宽度高度是否都一样?
换行倒是容易,只需:
var divs = [ ... ]; // 100个
var left=0, top = 0;
var i;
for (i=0; i<divs.length; ++i) {
// 把divs[i]放到(left, top)处
left += divs[i].offsetWidth; // 假定没有外边距,这是下一个div的left

if (0 == (i + 1) % 10) {
left = 0; // left复位的最左边
top += ?; // 换到下一行
}
}
这里的“?”,由你来决定,如果这些div的高度都一样,那么任取其中一个的offsetHeight就可以了,否则你必须搜索并选取这一行offsetHeight最大的那个。
追问

div 是绝对定位

这是生成div的代码:

追答
把我代码里的“?"换成divs[i].offsetHeight,就完成了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式