2013-04-10 44 views
0

我有一个网页布局,其中有3行。我需要gove中间项目一个特殊的CSS类。怎么做?如何获得3行中的第二个项目?

div [div] div 
div [div] div 
div [div] div 
div [div] div 

我知道与表中的行,你可以得到使用三元运算符来检测它们交替行颜色:

class="<?= $key % 2 == 0 ? 'odd' : 'even'" 

,但如何做到这一点在3排第二?

P.S.我在数学上很糟糕,也许答案很明显。

+4

'类= “<= $关键%3 == 1 '奇':? '偶数'”' – 2013-04-10 14:33:13

+0

作为标记指出,它不是三元运算符做魔术,而是剩下的[modulo](http://en.wikipedia.org/wiki/Modulo_operation)测试。 – abathur 2013-04-10 14:37:26

+0

@MarkBaker如果你张贴作为答案,我会接受。由于浏览器支持,我无法使用css解决方案。我必须支持ie7。 – TK123 2013-04-10 14:44:03

回答

0

修改为模量试验3除数(对于3行每块);和试验1的结果(从偏移0的第二条目)

class="<?= $key % 3 == 1 ? 'odd' : 'even'" 
1

您可以使用CSS样式应用到nth-child ...

div:nth-child(3n+2) { 
    color: red; 
} 

你可以看到这个JS Fiddle这样的一个例子。

如果您确实需要在PHP中执行此操作,则可以使用% 3而不是2并取掉1以获取偏移量。

+0

这不一定是CSS。该标签没有CSS – karthikr 2013-04-10 14:36:05