我是php的新手,我已经通过互联网搜索了我的问题的解决方案,但仍无法找到解决问题的方法。
我有一个看起来像这样的PHP代码:
<?php
if ($comments_count) {
for($i=0; $i<$comments_count; $i++) {
if ($dont_show_email[$i] != '1' && $email != '') {
$author[$i] = "<a href=\"mailto:{$email[$i]}\">{$author[$i]
}
</a>";
}
$text[$i] = str_replace(chr(13), '<br />', $text[$i]);
?>
<div>
<?php print $author[$i]; ?>
<?php print $time[$i]; ?>
<?php print htmlspecialchars_decode($text[$i]); ?>
</div>
显示和输出如下:
Post 1
Post 2
Post 3
Post 4
我已经尝试了几乎任何我找到的东西,但我无法让它适合我。 CSS列数也不起作用,因为每个帖子都有不同的高度大小,所以大多数帖子都被一列末尾的一半缩减。
我想让输出显示如下:
Column1 Column2 Column3
Post 1 Post 2 Post 3
Post 4 Post 5 Post 6
我需要将输出拆分为这样的列,这样每个帖子都可以保持不同的高度。
感谢您的帮助。
答案 0 :(得分:0)
试试这个(基于HTML无边框表格)解决方案:
<table style="border: none;">
<?php
$columns = 3;
for($i=0; $i<$comments_count; $i++) {
if ($i % $columns == 0) echo "<tr>"; // begin of row
echo "<td>{$author[$i]}</td>";
echo "<td>{$time[$i]}</td>";
echo "<td>" . htmlspecialchars_decode($text[$i]) . "</td>";
if ($i % $columns == ($columns - 1)) echo "</tr>"; // end of row
} ?>
</table>
答案 1 :(得分:0)
更新HTML代码
<div class="box">
添加css
.box{float:left; width:31%; margin:3px; padding:5px;}