【发布时间】:2014-07-26 03:48:55
【问题描述】:
假设我在 java 中有这种循环(不是确切的代码,也不是真正有效的代码,只是为了给你一个大致的情况):
print "<ul>";
while (res = fetch(database)) {
print ("<li>" + res.col['data'] + "</li>");
}
print "</ul>";
我有这个 CSS,它使列表中的最后一项变为红色。
ul li:last-child { color: red; }
这在大多数浏览器上都可以正常工作。问题是:
- 我也需要在 IE8 上进行这项工作。
- IE8 不支持 last-child。
- 我无法测试“while”的当前迭代是否正在进入最后一个迭代。或者说,我无法检查循环何时结束。这不是一个普通的循环,但我们就这么说吧。所以我不能给最后一个
<li>上课,比如class="lastchild"。 - 我也尝试过使用 javascript 和 jquery,但我认为两者都无法选择“last-child”,因为它们取决于 css 进行选择。
在这种情况下最好的方法是什么?谢谢。
【问题讨论】:
-
在发布此问题之前,我正在查看该问题。但这个问题与我的不同之处在于它只有两列。通过添加一个类,这是一个简单的解决方案。我在该问题的一个解决方案中读到了这一点。我的问题是一个不可数的循环,这真的是不可数的。无法测试和检测循环何时结束。
-
selectivizr.com 从未测试过,但您应该研究一下:js emulation for pseudo selectors in explorer
-
@LorenzoBoccaccia 看起来是一个可行的解决方案。我会试着调查一下。 :) 谢谢。
标签: java css list while-loop css-selectors