ul列表在IE8中无法正确呈现

时间:2012-12-05 17:05:30

标签: internet-explorer-8 html-lists html-rendering

当我的列表显示时,我的列表的第一个元素位于正确的位置,但从第二个元素开始到结束,它们都出现在子弹下而不是它下面:/

如果您需要查看代码,请转到http://www.nsworld.org/development(点击美国)

我正在尝试找到解决此问题的方法,它只出现在IE8中,所有其他浏览器的一切都显示完美。

1 个答案:

答案 0 :(得分:1)

关闭锚标记(以及列表项) - 它们只是被打开,但从未关闭:

"<li>"+"<a href='http://nsworld.org/'>"+"Foo"+""+""+"<br />"+"<br />"+

一般来说,这段代码需要大量重新编写。有很多不必要的连接,这会破坏这条线的易读性(以及它周围的那些)。

此外,

我会建议一些事情。首先,您将开始使用标准doctype,例如<!DOCTYPE html>,以便您在各种浏览器和版本中获得更一致的行为。

其次是关闭你的标签。我注意到这些列表项没有被关闭,因此任务留给浏览器确定后续列表项应该如何格式化。虽然这不是无效,但绝对不是我鼓励的做法。

最后是在JavaScript中避免冗长的字符串连接,例如:

 switch (code) {
    case "us":
x="<ul>"+
"<li>"+"<a href='http://nsworld.org/findings/How-does-it-all-Fit-Together/Capacities#!prettyPhoto[examples2]/2/'>"+"Envision Charlotte"+""+""+"<br />"+"<br />"+
"<li><a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Innovative-Societies#!prettyPhoto[examples2]/2/'>"+"US Open Government Initiative"+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Innovative-Societies#!prettyPhoto[examples2]/3/'>"+"Unreasonable Institute"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Innovative-Societies#!prettyPhoto[examples2]/4/'>"+"FailFaire"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Emergent-Solutions#!prettyPhoto[examples]/1/'>"+"Ushahidi-Haiti"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Emergence/Public-Organizations-as-Experimentation-Platforms#!prettyPhoto[examples2]/3/'>"+"Social Innovation Fund"+""+""+
"<li>"+"<a href='http://nsworld.org/findings/Building-New-Capacities-Resilience/Adaptive-Capacity#!prettyPhoto[examples2]/1/'>"+"Community and Regional Resiliency Institute (CARRI)"+""+""+
"<li>"+"<a href='http://nsworld.org/articles/community-resilience-taking-tangible-steps-towards-achieving-societal-resilience'>"+"Community Resilience: Taking Tangible Steps Towards Achieving Societal Resilience"+""+""+
"<li>"+"<a href='http://nsworld.org/discoveries/nurse-family-partnership-co-produces-results-us'>"+"Nurse-Family Partnership Co-Produces Results in the U.S."+""+""+
""
        break;

您可以预先加载这些列表,异步下拉这些列表,或者将数据填充到某种JavaScript对象中。正如您所看到的,大量的字符串连接使代码变得非常难以理解,并为错误提供了更多机会。

相关问题