Wordpress查询 - 循环更改div的CSS

时间:2012-05-18 13:50:19

标签: wordpress while-loop

我已经构建了一个WP循环,仅限于加载的“ 2 ”文章。我想做的是循环中的第二篇文章或底部文章,没有边框底部。

如何在WP循环中执行此操作?

我的PHP代码是:

<div class="span content"> <!-- This is column 1 -->
    <?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
            <h2><?php the_title(); ?></h2>
            <p class=""<?php the_content(); ?>
   <?php endwhile; ?>
</div><!-- /.span8 .content -->

CSS就是:

.article {
border-bottom: 1px dotted #000000;
width: 170px;
}

由于

1 个答案:

答案 0 :(得分:1)

只需使用简单的CSS即可。应该适用于IE7。

.article {
    width: 170px;
}

.article:first-child {
    border-bottom: 1px dotted #000000;
}

注意:如果你的第一个孩子是一个像评论这样的文本节点,那么IE7中的第一个孩子的实现有点儿麻烦。

:第一个孩子将匹配第1项

<ul>
    <li>Item 1</li>
    <li>Item 2</li>
</ul>

:第一个孩子与第1项不匹配,因为评论。

<ul>
    <!-- Comment -->
    <li>Item 1</li>
    <li>Item 2</li>
</ul>

<强> Workarround

<ul><!-- Comment --><li>Item 1</li>
    <li>Item 2</li>
</ul>

或者只删除评论。

您还可以在while循环中计算迭代次数。这不是一个优雅的方法,但应该适合你......

<?php
    //Set Counter to 0
    $counter = 0;

    // Start Loop
    if ( have_posts() ) while ( have_posts() ) : the_post();

    // Increment Coounter
    $counter++;
?>
    <div class="span content item-<?php echo $counter; ?>">
        <h2><?php the_title(); ?></h2>
        <p><?php the_content(); ?></p>
    </div><!-- /.span8 .content -->
<?php endwhile; ?>

WP-Loop的每次迭代都会将$ counter递增1。

第一次迭代:

 <div class="span content item-1">

第二次迭代:

 <div class="span content item-2">

第三次迭代:

 <div class="span content item-3">

......等等。