我正在使用cakephp,下面是我的示例代码以及我正在做的CSS
<div class="thumbs">
<?php if(!empty($auction['Product']['Image']) && count($auction['Product']['Image']) > 0):?>
<?php foreach($auction['Product']['Image'] as $image):?>
<?php if(!empty($image['ImageDefault'])) : ?>
<span><?php
echo $html->link(
$html->image('default_images/'.$appConfigurations['serverName'].'/thumbs/'.$image['ImageDefault']['image']),
'/img/'.$appConfigurations['currency'].'/default_images/max/'.$image['ImageDefault']['image'],
array('class' => 'productImageThumb'),
null,
false);?>
</span>
<?php endif; ?>
<?php endforeach;?>
<?php endif;?>
</div>
.thumbs span //css for how to display the images
{
float:left;
width:75px; //this displays two images as a thumbnail in a single row
margin:12px;
border-right:1px solid #d5d5d5;
padding:3px;
}
我的问题是我想为所有计数为偶数的图像执行css border-right:none
。我尝试在代码的span
中使用for循环,但没有得到结果。请建议我如何仅针对奇数计数的拇指图像动态执行css border-right
,而不是偶数数字。
答案 0 :(得分:2)
将键添加到foreach循环中,并使用键向奇数图像添加一个新类(假设这是一个标准的Cake查询结果,其中键可靠地递增1):
foreach( $auction['Product']['Image'] as $key => $image ):
$odd = ( $key % 2 ) ? ' oddImage' : '';
....
array( 'class' => 'productImageThumb'.$odd ),
....
.oddImage {
border-right:1px solid #d5d5d5;
}
(Protip:您不必将每一行PHP都包装到<?php ... ?>
标签中。如果只在需要输出纯HTML时关闭PHP标签,代码将更具可读性。)