很难提取代码并将其发布到此处,因此我发布了一个示例站点来演示我的问题。我一直在思考这个问题,有几种方法可以解决这个问题(HTML 修改、CSS + HTML 修改、CSS + JS 修改),但由于我是 web 编码的 n00b,我想知道什么是最好的攻击计划在这里。
无论如何,问题:
在这里看看: http://321cart.com/sellya/
打开类别导航菜单,您会看到:
所有类别下的链接都是ul
,包含很多li
。我想打散列表,把列表展开多列,这样一列最多只有3个li
。这是我想要做的一个例子:
这是我想要的整体:
这会导致菜单宽度增加(理论上几乎加倍),但这对我来说没问题。我可以自己处理。
有几种方法可以做到这一点,但我更愿意只使用 CSS 修改来做到这一点。如果不是,那么也许通过 CSS 和 JavaScript 修改?我想保留对实际 HTML 代码的更改作为最后的手段,因为这是我不想修改的原始 PHP HTML 生成 OpenCart 代码。
请注意,我确实尝试过自己解决这个问题,但事实证明它有点复杂..所以不要以为我没有尝试过..其次,将其发布到 JSFiddle 中会很困难到,它不会真正完全代表实际问题,这就是为什么我要发布指向示例站点的链接。
请大家看看。站点:http://321cart.com/sellya/
所以我需要一些答案来解决这个让我感到困惑的问题。
编辑:
忘了指出这一点。在我提供的示例中,所有 ul
都有超过 3 个 li
,但在我的实际情况中,只有少数 ul
有每个超过 3 个 li
,我只想将那些扩展到 2 列,而不是 1、2 或 3 个 li
每一个。
最佳答案
CSS3 引入了列,它应该做你想做的。理论上,只需将高度和 column-width
应用于您的 ul
。实际上,您可能需要在 column-width
上使用 vendor 前缀,为您提供 -webkit-column-width
、-moz-column-width
等Try it out.
关于javascript - 将 UL 分成多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18948065/