假设我在java中有这种循环(不是一个确切的代码,它既不是真正有效的代码,只是为了给你一个关于情况的一般视角):
print "<ul>";
while (res = fetch(database)) {
print ("<li>" + res.col['data'] + "</li>");
}
print "</ul>";
我有这个CSS,这使得列表中的最后一项具有红色。
ul li:last-child { color: red; }
这适用于大多数浏览器。问题是:
<li>
课程,比如class="lastchild"
。在这种情况下,最佳方法是怎样的?感谢。
答案 0 :(得分:1)
print "<ul>";
String liText=null;
while (res = fetch(database)) {
if (liText!=null) {
print ("<li>" + liText + "</li>");
}
liText=res.col['data'];
}
if (liText!=null) {
print ("<li style='the last element style'>" + liText + "</li>");
}
print "</ul>";
移出最后一行的添加并在那里应用所需的样式
答案 1 :(得分:0)
假设问题出现在Java中,我想知道为什么没有办法检测最后一条记录。您可能需要首先重新考虑数据结构,在Map或List中填充数据然后迭代。
并且,如果那是不可能的,你可以选择StringBuilder instnace首先通过循环构建整个String html标签,然后用所需的样式替换最后一个li元素,然后将它放在print语句中用于渲染。
即使您尝试使用javascript进行编码,上述几点也是有效的,只需稍加改动即可。