所以我现在正在使用一些JavaScript和一组对象创建一个动态表。我需要在两者之间添加一些空白区域,但是一个空间是不够的,我需要将它几乎标记出来。最好的方法是什么?到目前为止,这是我的代码:
var sections = {
p1 : {sname: "Dynamic Table", mscore: 20},
p2 : {sname: "IntelliJ Usage", mscore: 10},
p3 : {sname: "Calender Control", mscore: 30},
p4 : {sname: "Active Form", mscore: 20},
p5 : {sname: "Object Database", mscore: 20}
};
document.write(Object.keys(sections).reduce(function(s, p, i) {
var o = sections[p];
return s + (i>0?'<br><br><br><br>':'') + o.sname + ' ' + o.mscore + ' ' }, '')
);
答案 0 :(得分:6)
如果要向DOM添加空格,请尝试使用不间断空格
' '
而不是
' '
这些不间断的空格可以链接。
会强制在页面上显示两个空格。
答案 1 :(得分:4)
你可以return s + "<div class='whatever'>" + o.sname + ' ' + o.mscore + "</div>"
并使用CSS来设置空格。
var sections = {
p1 : {sname: "Dynamic Table", mscore: 20},
p2 : {sname: "IntelliJ Usage", mscore: 10},
p3 : {sname: "Calender Control", mscore: 30},
p4 : {sname: "Active Form", mscore: 20},
p5 : {sname: "Object Database", mscore: 20}
};
document.write(Object.keys(sections).reduce(function(s, p, i) {
var o = sections[p];
return s + "<div class='whatever'>" + o.sname + ' ' + o.mscore + "</div>" }, '')
);
div.whatever { padding-bottom: 5em; }
更新使用表格:
var sections = {
p1 : {sname: "Dynamic Table", mscore: 20},
p2 : {sname: "IntelliJ Usage", mscore: 10},
p3 : {sname: "Calender Control", mscore: 30},
p4 : {sname: "Active Form", mscore: 20},
p5 : {sname: "Object Database", mscore: 20}
};
document.write("<table>" + Object.keys(sections).reduce(function(s, p, i) {
var o = sections[p];
return s + "<tr><td>" + o.sname + '</td><td>' + o.mscore + "</td></tr>" }, '')
+ "</table>");
td { padding-bottom: 2em }
答案 2 :(得分:3)
控制间距的最佳方法是通过CSS。将每个人包裹在一个班级中并根据口味对其进行设计。
另一种方法是使用几个不间断的空格
。
因此:return s + (i>0?'<br><br><br><br>':'') + o.sname + ' ' + o.mscore + ' ' }, '')
答案 3 :(得分:2)
最快的解决方案是将所有部分包装在<pre></pre>
标记中。
:
var sections = {
p1 : {sname: "Dynamic Table", mscore: 20},
p2 : {sname: "IntelliJ Usage", mscore: 10},
p3 : {sname: "Calender Control", mscore: 30},
p4 : {sname: "Active Form", mscore: 20},
p5 : {sname: "Object Database", mscore: 20}
};
document.write("<pre>"); //<--here
document.write(Object.keys(sections).reduce(function(s, p, i) {
var o = sections[p];
return s + (i>0?'<br><br><br><br>':'') + o.sname + ' ' + o.mscore + ' ' }, '')
);
document.write("</pre>"); //<--...and here
更好的解决方案是使用CSS
.wrapper-class {
white-space: nowrap;
}
答案 4 :(得分:1)
使用四个或五个不间断空格来添加标签。代码看起来像
如果您需要在显示的内容中使用标签,请考虑CSS提供的格式选项。