1

我正在使用 codeingiter 并且有一些我从数据库中显示的结果。使用 PHP 显示的结果如下:

 <?php
        if(isset($foo)){
            foreach($foo as $bar){ ?>
            <ol><li>
                <div class="results">  
                    <p class="name"><?php echo $bar['name']; ?></p>
                    <p class="address"><?php echo $bar['address']; ?></p>
                    <p class="address"><?php echo $bar['postcode']; ?></p> 
                    <span><?php number_format($bar['miles'],3) ?></span> miles               
                </div>
            </li></ol>  
            <?php
          }
        }
        ?>

我还尝试将“结果”类添加到 ol li.results 中,但没有运气。添加了一个边框,边框环绕着每个结果,所以我知道我的标签在正确的位置。CSS:

ol li {
    border:1px solid red;
    list-style-type: decimal;
}

在 reset.css 我有这个:

loads...of...elements including ul, ol and li {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

我从中删除了 ol, li,我得到了数字,但每个结果都有 1,而不是 1, 2 3

这些显示为地址列表,我希望对它们进行编号,以便第一个具有 1.RESULT 1、2.RESULT 2 等等...我尝试使用有序列表标签,但似乎什么也没有显示有关数字。我已经签入了萤火虫,并且每个标签都在触发。这是 CSS 问题还是 PHP 显示结果的方式?

任何帮助将非常感激。

4

4 回答 4

6

您忘记了<li>标签内的<ol>标签

<?php
        if(isset($foo)){
            echo '<ol>';
            foreach($foo as $bar){ ?>
            <li>
                <div class="results">  
                    <p class="name"><?php echo $bar['name']; ?></p>
                    <p class="address"><?php echo $bar['address']; ?></p>
                    <p class="address"><?php echo $bar['postcode']; ?></p> 
                    <span><?php number_format($bar['miles'],3) ?></span> miles               
                </div>
            </li>  
            <?php
          }
          echo '</ol>';
        }
?>
于 2013-06-07T08:54:19.117 回答
4

尝试以下

<?php if(isset($foo)): ?>
    <ol>
      <?php foreach($foo as $bar): ?>
      <li class='results'>
        <p class="name"><?php echo $bar['name']; ?></p>
        <p class="address"><?php echo $bar['address']; ?></p>
        <p class="address"><?php echo $bar['postcode']; ?></p> 
        <span><?php number_format($bar['miles'],3) ?></span> miles               
      <li>
      <?php endforeach; ?>
    </ol> 
<?php endif; ?>
于 2013-06-07T08:55:56.717 回答
1

如果没有显示数字,这是一个 CSS 问题。重置样式表的常见问题。尝试添加:

list-style-type: decimal;

到您的列表样式。

于 2013-06-07T08:54:37.717 回答
1

如果我做对了,你的<OL>and</OL>标签应该留在 for cicle 之外,而你应该将你的输出包装在 cicle 之间<LI></LI>里面。此外,将 DIV 放在 LI 元素中也不是一个好习惯,如果可以通过更改样式来避免它。

于 2013-06-07T08:58:54.700 回答