如何将类添加到<;李>;由PHP使用jQuery生成?
我有一些PHP生成的如何将类添加到<;李>;由PHP使用jQuery生成?,php,jquery,html,css,Php,Jquery,Html,Css,我有一些PHP生成的。我希望每一行只显示4个,并且该行中的最后一个具有一个noMarginRight类 <ul> <li>sample</li> <li>sample</li> <li>sample</li> <li>sample here</li> <li>sample</li> <li>sample</li>
。我希望每一行只显示4个
,并且该行中的最后一个
具有一个noMarginRight
类
<ul>
<li>sample</li>
<li>sample</li>
<li>sample</li>
<li>sample here</li>
<li>sample</li>
<li>sample</li>
<li>sample</li>
<li>sample here</li>
<li>sample</li>
<li>sample</li>
<li>sample</li>
<li>sample here</li>
</ul>
- 样品
- 样品
- 样品
- 样品在这里
- 样品
- 样品
- 样品
- 样品在这里
- 样品
- 样品
- 样品
- 样品在这里
希望这有意义。您可以使用
演示:
如果您确定行数始终是4的倍数,则
$('ul li:nth-child(4n)').addClass('noMarginRight')
演示:我明白了你想要做的,你希望每四个
li
都没有右边距
,因此不需要分配任何类
,你可以使用纯CSS实现这一点,因为你已经为CSS标记了问题
ul li:nth-child(4n) {
margin-right: 0;
}
(使用color
属性显示选择器的工作方式)
(
margin
等效演示)您可以通过PHP代码进行管理,请尝试这种方式
<ul>
<?php
$result = array("ads", "sdsa", "fsdfs", "fsdfsfsdf", "ffsfsf");
$i = 0;
foreach ($result as $k => $v) {
?>
<li <?php echo (++$i % 4 == 0) ? "class=\"noMarginRight\"" : "" ?>><?php echo $v; ?></li>
<?php } ?>
</ul>
您可以对每行的最后一个li应用相同的名称属性,然后使用$(“基于名称的li选择器”).addClass(“myClass yourClass”)强>
例如:$($li[name='last'])。addClass(“noMarginRight”) 既然您提到使用php显示输出,下面是一种使用php的方法
$counter = 0;
while ($line = mysql_fetch_object($result))
{
if($counter %4 != 0)
{
echo "<li class='noMarginRight'>";
echo "your output";
echo '</li>';
}
else
{
echo "<li>";
echo "your output";
echo '</li>';
}
}
}
$counter=0;
而($line=mysql\u fetch\u object($result))
{
如果($counter%4!=0)
{
回声“”;
回应“你的输出”;
回音“ ”;
}
其他的
{
回声“”;
回应“你的输出”;
回音“ ”;
}
}
}
CSS-Only方法
为了完整起见,这里提供了一种纯粹的CSS3方式来实现您想要实现的目标:
ul
{
-moz列计数:4;/*Firefox*/
-webkit列计数:4;/*Safari和Chrome*/
列数:4;
-moz列间距:30px;/*Firefox*/
-webkit列间距:30px;/*Safari和Chrome*/
柱间距:30px;
列表样式:无;
保证金:0;
填充:0;
}
- 样品
- 样品
- 样品
- 样品在这里
- 样品
- 样品
- 样品
- 样品在这里
- 样品
- 样品
- 样品
- 样品在这里
为什么PHP不这样做?@Chris,我不得不编辑你的编辑,删除你添加的额外“谢谢”。虽然在现实生活中非常有用,但这种友好的玩笑不适合添加到本网站的问题或答案中。。。特别是当它们不是您的时,请在以后的编辑中避免这样做。
$counter = 0;
while ($line = mysql_fetch_object($result))
{
if($counter %4 != 0)
{
echo "<li class='noMarginRight'>";
echo "your output";
echo '</li>';
}
else
{
echo "<li>";
echo "your output";
echo '</li>';
}
}
}