【问题标题】:Safari incorrectly rendering list itemsSafari 不正确地呈现列表项
【发布时间】:2011-04-24 05:57:01
【问题描述】:

我有一个类似这样的无序列表

<ul>
 <li>
  <div>filled with other stuff</div>
 </li>
 <li>
  <div>filled with other stuff</div>
 </li>
 <li>
  <div>filled with other stuff</div>
 </li>
</ul>

当我在 Safari 中查看列表时,列表显示错误,当我检查 html 时,我得到类似这样的信息

<ul>
 <li>
  <div>filled with other stuff</div>
  <li>
    <div>filled with other stuff</div>
    <li>
     <div>filled with other stuff</div>
    </li>
  </li>
 </li> 
</ul>

知道为什么这只发生在 Safari 中吗?

【问题讨论】:

  • 无法在 Safari 5.0.2 或 Chrome 8 中重现(两者都使用 WebKit 来呈现 HTML)。你确定你的标记是正确的吗?
  • safari/webkit 有哪些版本?

标签: html safari


【解决方案1】:

你的标记是错误的。如果不先出现 ul,则无法将 li 嵌套在 li 中。

如果你想做嵌套的lis你需要开始一个新的ul

<ul>
<li>lorem
 <ul>
  <li>ipsum</li>
  <li>dolor</li>
 </ul>
</li>
</ul>

如果可以避免,最好不要在 li 中使用 div(您当然可以) - 如果您需要 li 来充当块,请将 display:block 添加到您的 css。

【讨论】:

  • 您好 Kron,感谢您的回复。我的目标是不要嵌套 LI。 Safari 正在使用我给出的第一个示例并将其转换为第二个示例,原因不明。
  • 抱歉,我应该更好地阅读这个问题。你为什么在你的 lis 中使用 div?如果您删除它们,它会按预期呈现吗?另外-您可以发布其余的代码吗?这很可能是代码的更高级
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-04-01
  • 2021-12-17
  • 1970-01-01
  • 2020-09-06
  • 2020-05-02
  • 2022-01-02
  • 1970-01-01
相关资源
最近更新 更多