<?php foreach ($rows as $id => $row): ?>
<li class="<?php print $classes[$id]; ?>"><?php print $row; ?></li>
<?php endforeach; ?>
以上代码用于输出文章列表。现在我想在10行的倍数之后添加大空格。只需添加一个大空间(例如:margin-bottom:30px,仅在每10个子弹点后,但其他li之间的空间为15px) 10个要点。如何更改上面的代码。然后我可以使用CSS来获得它。 -
答案 0 :(得分:1)
虽然我不清楚“大空间”是什么意思,但我假设你想在每10个列表项之后放置一个仲裁HTML标记。您可以这样做,例如:
<?php $i = 0; ?>
<?php foreach ($rows as $id => $row): ?>
<li class="<?php print $classes[$id]; ?>"><?php print $row; ?></li>
<?php if ($i++ === 10): ?><br /><?php $i = 0; endif; ?>
<?php endforeach; ?>
编辑,您澄清了:
不,例如:30px,但其他
<li>
之间的空格为20px。
可以这样做:
<?php $i = 1; ?>
<?php foreach ($rows as $id => $row): ?>
<?php $i++; ?>
<li style="margin-bottom:<?php echo ($i === 10) ? : '30' : '20'); ?>px;" class="<?php print $classes[$id]; ?>"><?php print $row; ?></li>
<?php if ($i === 10) $i = 1; ?>
<?php endforeach; ?>
答案 1 :(得分:1)
模数运算符(%)是理想的:
<?php $i = 0; foreach ( $rows as $id => $row ): ?>
<li style="margin-bottom: <?php echo $i ++ % 10 ? '30' : '20' ?>px;" class="<?php echo $classes[$id] ?>">
<?php echo $row ?>
</li>
<?php endforeach ?>
答案 2 :(得分:0)
作为对Aron代码的略微修改,如果你想使用CSS来设置<li>
的样式:
<?php $i = 1;
foreach ($rows as $id => $row):
if($i === 10){
$end_class = ' end-class';
$i = 1;
} else {
$end_class = '';
$i++;
}
echo '<li class="' . $classes[$id] . $end_class . '">' . $row . '</li>';
endforeach;
?>
然后,您可以将样式应用于.end-class
。