CSS 规则不适用于 PHP While{


CSS Rules not applying to PHP While{

我有一个PHP脚本,它使用while{为数据库中的每个新闻项制作一个"新闻框"(HTML div)。问题是应该对齐每个框的 CSS 规则没有被应用。

PHP/HTML:

<div class="bottomnews">
<?php
    $gnewsq = "SELECT * FROM news";
    $gnewsr = mysqli_query($mysqli,$gnewsq);
    if ($gnewsr->num_rows > 0) {
        // output data of each row
        while($nrow = $gnewsr->fetch_assoc()) {
?>
    <div class='newssquare'>
        <div style=background-image:url(uploads/<?php echo "$nrow[pic])"; ?> />
        <div style='padding-top:125px;'/>
        <div class='newscaption'>
            <a href='nyheder.php?a=<?php echo "$nrow[ID]"; ?>'><?php echo "$nrow[titel]" ?></a>
        </div>
    </div>
<?php
        }
    } else {
        echo "EMPTY";
    }
?>

.CSS:

.bottomnews {
    position: absolute;
    width: 1050px;
    height: auto;
}

.bottomnews的 CSS 规则不适用,但其他内容(如.newssquare)的 CSS 规则适用。这真的很奇怪,任何帮助都是值得赞赏的。

修复你的 html。这

<div style='padding-top:125px;'/>

。应该是:

<div style='padding-top:125px;'></div>

如果这真的是你的代码,那么难怪没有应用为类.bottomnews定义的 CSS。.bottomnewsdiv 根本不会出现在页面上。

你不能只在PHP代码中编写HTML,而不切换:

$gnewsq = "SELECT * FROM news";
$gnewsr = mysqli_query($mysqli,$gnewsq);
// Here you need to switch to HTML: ?>
<div class="bottomnews">
// Here you switch back to PHP: <?php
if ($gnewsr->num_rows > 0)

你编写它的方式,它应该给你一个致命的解析错误,因为<div class="bottomnews">不是有效的PHP代码。

对于您的 CSS,应该width: 1050px; Width:1050px,如果这些不仅仅是示例代码错误,则应height Heightposition: absolute;通常也与topbottomleftright属性中的一个或两个组合在一起,但你可能会将其与其他样式配对。

代码似乎令人困惑,因为您似乎缺少<?标签。我将添加我假设您拥有的内容并纠正明显的错误。

我建议你改变大概是这样的:(如果不是,那么你的PHP中发生了一些奇怪的事情)

<?php
$gnewsq = "SELECT * FROM news";
$gnewsr = mysqli_query($mysqli,$gnewsq);
?>
<div class="bottomnews">
<?php
if ($gnewsr->num_rows > 0) {

    // output data of each row
    while($nrow = $gnewsr->fetch_assoc()) {
?>
    <div class='newssquare'>
    <div style=background-image:url(uploads/<?php echo "$nrow[pic])"; ?> />
  <div style='padding-top:125px;'/>
        <div class='newscaption'>
        <a href='nyheder.php?a=<?php echo "$nrow[ID]"; ?>'><?php echo "$nrow[titel]" ?></a>
     </div>
    </div>
<?php
    }
    }else{
    echo "EMPTY";
    }
?>

对此:

<?php
    $gnewsq = "SELECT * FROM news";
    $gnewsr = mysqli_query($mysqli,$gnewsq);
?>
<div class="bottomnews">
<?php
    if ($gnewsr->num_rows > 0) {
        // output data of each row
        while($nrow = $gnewsr->fetch_assoc()) {
?>
    <div class="newssquare">
        <div style="background-image:url(uploads/<?php echo $nrow[pic]; ?>"></div>
        <div style="padding-top:125px;"></div>
        <div class="newscaption">
            <a href="nyheder.php?a=<?php echo $nrow[ID]; ?>"><?php echo $nrow[titel] ?></a>
        </div>
    </div>
<?php
    }
    }else{
        echo "EMPTY";
    }
?>
</div>