我正在学习JSON (或JS对象),我正在努力研究如何将上述对象引入HTML并使用CSS对其进行样式设计。
如何选择“firstName”和“lastName”对象来对它们进行样式设计?
这是小提琴:http://jsfiddle.net/frankDraws/5bfzo1q2/25/
var data = { "users":[
{
"firstName":"Jack",
"lastName":"Lewis",
"startDate": {
"month":"January",
"day":12,
"year":2000
}
},
{
"firstName":"Raymond",
"lastName":"Girard",
"startDate": {
"month":"April",
"day":28,
"year":1994
}
},
{
"firstName":"Enrique",
"lastName":"Sosa",
"startDate": {
"month":"October",
"day":14,
"year":2004
}
}
]}
var output="<ul>";
for (var i in data.users) {
output+="<li>" + data.users[i].firstName + " " + data.users[i].lastName + " – " + data.users[i].startDate.month + " " + data.users[i].startDate.day + ", " + data.users[i].startDate.year+ "</li>";
}
output+="</ul>";
document.getElementById("writeTo").innerHTML=output;@import url(http://fonts.googleapis.com/css?family=Roboto);
body {
background: MediumTurquoise;
font: normal 17px/1.8em Roboto, Helvetica, sans-serif;
}
div {
box-shadow: 0 3px 5px darkcyan;
background: gainsboro;
border-radius: 5px;
margin: 30px auto 0;
max-width: 300px;
max-height: 200px;
padding:20px;
}
ul {
margin: 0;
padding: 0;
}
ul li {
color: #555;
list-style:none;
}
.firstName :first-child {
font-weight:bold;
}<div id="writeTo"></div>
发布于 2014-09-25 20:14:25
不能使用CSS选择JSON。它在DOM上运行。
看上去你没想过。列表项中只有一个文本节点(您使用六个字符串创建了该节点)。
目前,您没有任何CSS可以选择的东西(主要限于元素)来区分不同的数据位,所以您不能。
您需要添加其他标记。
例如:
"<li><span class='firstName'>" + data.users[i].firstName + "</span>"我强烈建议一次构建每个元素,并对它们进行append,而不是尝试将一个巨大的字符串混在一起。
发布于 2014-09-25 20:17:00
最简单的方法是将名字和姓氏包装在另一个标签中,并将css样式添加到新标记中。
"<li><span>" + data.users[i].firstName + " " + data.users[i].lastName + "</span>"和css
ul li span:first-child {
font-weight:bold;
}http://jsfiddle.net/5bfzo1q2/26/
https://stackoverflow.com/questions/26047226
复制相似问题