1

我正在使用 wordpress 主题,当某些变量的值是偶数或奇数时,我确实想使用 php 更改 2 个块的 css。

这是我的代码:

<?php 
            $i = 0;
            while ( have_posts() ) {

                // Override
                if(($i % 2) == 1) { ?>

                    <style type="text/css">
                        .grid-box-img {
                            width: 54%;
                            float: left;
                        }

                        .entry-head {
                            width: 56%;
                            background-color: #fff;
                            position: absolute;
                            z-index: 10;
                            margin-left: 43%;
                            margin-top: 27%;
                        }
                    </style>
                    <?php 
                }
                else { ?>
                    <style type="text/css">
                        .grid-box-img {
                            width: 54%;
                            float: right;
                        }

                        .entry-head {
                            width: 56%;
                            background-color: #fff;
                            position: absolute;
                            z-index: 10;
                            margin-top: 27%;
                        }
                    </style>
                    <?php
                } 
                $i++;
                the_post(); 
            } ?>

但是,不幸的是它不起作用......它仅适用于最后一个值的 CSS。

我怎样才能做到这一点 ?谢谢 :)

4

2 回答 2

2

最佳实践是让两个类一个为偶数,另一个为奇数,并if在需要的地方放置一个条件。

<a href="/" class="<?php if(($i % 2) == 1){ echo 'even';} else { echo 'odd';} ?> ">Link </a>

在您的 CSS 中:

.even{
//your styling for even class
}
.odd{
    //your styling for odd class
    }
于 2013-07-07T14:04:07.233 回答
0

CSS 适用于整个文档(HTML 5 引入了作用域样式表,但浏览器支持很弱,它们对于这个问题来说是一个糟糕的解决方案)。

如果你想指出不同的元素是不同的,那么让它们成为不同类的成员,不要尝试对它们应用不同的样式表。

于 2013-07-07T13:53:34.363 回答