【发布时间】:2014-03-20 20:52:52
【问题描述】:
我正在尝试实现相当复杂的布局。我已经做到了,但不禁认为 IF 语句有点缺乏细化。
我有一个 for 循环,它遍历网格项目,第一个项目和每 5 个项目较大,并且每隔一个大项目浮动到右侧而不是左侧。连续的每个大的都有四个小项目(因此大的与四个小的大小相同)。
我只是觉得我的 IF 不是特别优雅,而且还限制了网格的大小。
$i = 0;
foreach ($items as $item) {
if ($i % 5 == 0) { ?>
<article <?php if ($i == 5 || $i == 15 || $i == 25 || $i == 35 || $i == 45 || $i == 55) { ?>style="float:right;" <?php } ?>>
//do big item
</article>
} else {
<article>
//do small item
</article>
}
$i++;
}
我还试图弄清楚如何将每行 5 个项目包装在另一个 div 中以帮助调整大小?我在想另一个块 if ($i % 5 == 0) { 可能会对此有所帮助,但我也意识到加载时间和最佳实践。
一如既往地非常感谢任何帮助!
【问题讨论】:
-
在您的代码中,您没有增加
$i的值,这如何工作? -
如果这是为了造型,您也可以查看CSS nth child selector。这是我要走的路线。
-
对不起,我在我的代码中,我简化了上面的代码以便于阅读。不过我现在要编辑它
标签: php if-statement for-loop