【发布时间】:2010-10-16 15:15:04
【问题描述】:
我读过这篇优秀的Multi-column list article,以及this question on SO。我得出的结论是,没有跨浏览器的方法可以将长的无序列表转换为 n 等长的列。到目前为止,我已经简化为这样的多 ul 解决方案:
//Three columns.
string col1 = string.Empty;
string col2 = string.Empty;
string col3 = string.Empty;
int currItem = 0;
int collectionCount = myItemCollection.Count;
foreach item in myItemCollection {
currItem++;
if (currItem < collectionCount * .33)
{
col1 = col1 + item.someProperty
}
else if (currItem < collectionCount * .67)
{
col2 = col2 + item.someProperty
}
else
{
col3 = col3 + item.someProperty
}
}
string allColumns = @"<ul>" + col1 + "</ul><ul>"
col2 + "</ul><ul>" + col3 + "</ul>";
Response.Write(allColumns);
有没有更简单的方法将我的列表分成三个一组,或者更好的是,当元素是“第三个”中的最后一项时,只需编写适当的结束/开始 ul 标记?
【问题讨论】: