我正在处理显示评论的博客的一些代码。这是从数据库输出注释的代码:
$i = 0;
while ($i < $num) {
$name = mysql_result($result,$num - $i,"name");
$dream = mysql_result($result,$num - $i,"dream");
echo "$name<br>$dream<br>";
$i++;
}
我目前正在使用CSS将样式应用于这个php所在的整个div。这让我可以格式化所有发布的评论,但我想统一格式化每个评论。例如,我可以使用CSS在所有注释周围添加边框,但我想要的是每个注释周围的相同边框以分隔注释。有任何想法吗?感谢帮助。
答案 0 :(得分:3)
将每条评论放入div
echo "<div class='comment'>$name<br>$dream</div>";
或者,语义更好,将所有内容都包装到<ul>
中,并使每条评论都为<li>
:
echo "<li>$name<br>$dream</li>";
并按如下方式处理每个li
:
ul.comments li { border: ..... }
答案 1 :(得分:1)
echo '<div class="comment">' . "$name<br/>$dream<br/></div>";
然后在你的CSS中你可以使用
.comment {
/* CSS rules for comments */
}
我喜欢Pekka的想法:
<ul class="comments">
<?php
$i = 0;
while ($i < $num)
{
$name = mysql_result($result,$num - $i,"name");
$dream = mysql_result($result,$num - $i,"dream");
?>
<li>
<ul>
<li><?php echo $name; ?></li>
<li><?php echo $dream; ?></li>
</ul>
</li>
<?php
++$i;
}
?>
</ul>
然后在你的CSS中(你可以为每个名字,梦想等添加更多的课程)
ul.comments {
/* CSS rulse for a nice background etc for the whole group of comments */
}
ul.comments ul {
/* CSS rules for each comment */
}
ul.comments ul li {
/* CSS rules for each subsection of a comment
You could make separate classes for these too */
}
答案 2 :(得分:1)
只需使用div和类。
例如,输出类似:
<div class="comment">
<div class="author">John</div>
<div class="commentBody">This is a comment!</div>
</div>
通过这种方式,您可以单独设置整个注释(类comment
),作者名称(类author
)和注释本身(类commentBody
)
您也可以使用<li>
代替<div>
s。
答案 3 :(得分:1)
作为一个建议,你可以斑马条纹评论,而不是在每个评论周围放置边框。您的PHP需要使用模数(2)添加条件,以添加偶数/奇数的css类。你的CSS看起来像这样:
ul.comments li.even {
background-color:white;
}
ul.comments li.odd {
background-color:lightBlue;
}