从无序列表的最后一个li元素中删除边框

时间:2012-01-07 22:59:49

标签: php

我有一个 ul列表,其中包含一个查询和一个在其中显示 li's 的while循环。

每个李都有一个边框底部。我需要找到一种方法让最后的李没有边框。

以下是我的想法:

<ul> 

$z = '0'; 

$anchors2 = mysql_query("SELECT * FROM anchors WHERE site_url = '$site_current2'  AND site_type = 'slave' LIMIT 999 OFFSET 9"); 

while($anc2 = mysql_fetch_assoc($anchors2)){

    $z++;

    $s_anchor2 = $anc2['site_anchor']; 

    $s_current2 = $anc2['site_current'];

    if ($z != $total_number_of_rows){ // How can I get the total number of queried rows?

        echo '<li><a href="'.$s_current2.'" title="'.$s_anchor2.'" target="_self">'.$s_anchor2.'</a></li>';             

   } else {

        echo '<li style="border-bottom:none"><a href="'.$s_current2.'" title="'.$s_anchor2.'" target="_self">'.$s_anchor2.'</a></li>';  
                    }                   
   }

</ul>

* *问题是我需要一种方法来查找总行数以使我的代码工作并删除最后一行的边框

有什么想法吗?

刚刚尝试使用jquery,我是新来的。我有几个ul列表,这里是代码:

function last_li_remove_border() {
    $("ul.no_border_last_li li:last").each(function() {
        css({border:'none'});
    });
}

我怎样才能让它发挥作用?

Ty答案:)

7 个答案:

答案 0 :(得分:1)

3种方式:

  1. 使用mysql_num_rows($anchors2)查找有多少行。
  2. 使用CSS last-of-type选择器
  3. 使用jQuery或其他一些JS库。 jQuery看起来像:

    $("li:last").css({border-bottom:'none'});

  4. 我选择2,因为这意味着html是一致的 - 如果可能的话,你不应该使用内联CSS。如果不是2,那么1.使用jQuery将是我最后的手段,需要巨大的利润!

答案 1 :(得分:0)

为什么你不使用jquery呢?使用li:最后你应该很容易做到!

答案 2 :(得分:0)

使用JQuery

$( “利:最后一个”)的CSS({边界: '无'});

快速速成课程

$("li:last") explained
$() is the JQuery call
li:last (simple CSS selector)
.css({border:'none'}) add a CSS parameter border:none

答案 3 :(得分:0)

为什么要使用内联编码或jquery?这很容易在css中完成,这在逻辑上属于样式级别。这就是:last-child伪类适用于:http://www.quirksmode.org/css/firstchild.html

答案 4 :(得分:0)

我同意杰里米的观点。使用jQuery通过简单的$('li:last').css({'border-bottom':'none'});

来处理它

但要回答您的问题,您可以使用mysql_num_rows();获取行数 $total_number_of_rows=mysql_num_rows($anchors2);可以在您的示例中使用

不要忘记在循环结束前增加$ z - $z++

-ignore,只是看到你是$ z ++ ing :)现在要去做更多的咖啡:D

答案 5 :(得分:0)

在CSS中使用:last-child伪类。假设您的<ul>具有类“列表”,则CSS将为

ul.list li { border-bottom: 1px solid black; }
ul.list li:last-child { border-bottom: none; }

答案 6 :(得分:0)

我认为你问的是如何获得行数,如果这是真的你可以尝试:mysqli_num_rows