PHP 打印; Css 仅适用于数据库的第一行

标签 php html mysql css printf

需要帮助。我试图在我的页面上显示读者评论。评论保存在数据库 (MySQL) 中。我使用了 printf(String, args1,args2) 并在上面添加了一些 css 样式。奇怪的是,CSS 仅适用于第一条评论。

if ($conn = mysqli_connect("$servername", "$username", "$password", "$dbname")){
    $sql = "SELECT * FROM kommentare ORDER BY datum DESC";
    $ergebnis = mysqli_query($conn, $sql);
    while ($zeile = mysqli_fetch_object($ergebnis)){
        **$format = "<p><span id='ueberschrift'>%s<span/>&nbsp;<span id='writer'><a href='mailto:%s'>%s<a/> schrieb am:%s<span/><p/>
             <p id='kommentare'>%s<p/><hr/>";
        printf($format,
               htmlspecialchars($zeile->ueberschrift),     
               urlencode($zeile->email),
               htmlspecialchars($zeile->name),
               htmlspecialchars(date("d.m.Y, H:i", $zeile->datum)),

               nl2br(htmlspecialchars($zeile->kommentar))
              );**
    }
} else {
    echo "Fehler: ".  mysqli_connect_error(). "!";
}    

#writer{
    font-weight: normal;
    float:right;   
}

 #ueberschrift {
       font-weight: bold;
       font-size: 14px;
}

float:right 仅适用于第一条评论(数据库的最后一行) 我做错了什么?这是一个 image of the page .

最佳答案

尝试使用

<span class ='ueberschrift'
<span class ='writer'

<span id ='ueberschrift'
<span id='writer'

每个 id 应该是唯一的,并且在每个 html 文档中只出现一次。类可以出现多次。

CSS 将是:

.writer{
    font-weight: normal;
    float:right;   
}

 .ueberschrift {
       font-weight: bold;
       font-size: 14px;
}

https://css-tricks.com/the-difference-between-id-and-class/

关于PHP 打印; Css 仅适用于数据库的第一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37956703/

相关文章:

html - 如果文本溢出 = 它转到下一行

html - 如何并排创建 3 个大小相同的盒子?

InnoDB压缩后Mysql错误索引

php - Innodb中的记录锁定,这一定可以工作吗

PHP - MySQL 未连接?

javascript - 地理定位 API 在某些 Android 设备上不起作用

mysql - 将行值添加到总计 if 条件(不知道如何问这个)

mysql - 如何将两个表与另一个第三个表中的公共(public)列连接起来?

php - SELECT SUM - SQL 查询不工作

php - 访问对象中的数组