用替代颜色为桌子着色

时间:2013-04-15 04:15:25

标签: php html css

下面我添加了我的css文件和我的html文件,我需要使用更改名称颜色为我的表着色,但它不起作用我不知道我在哪里做错了。

CSS文件: -

table.gridtable{
    font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
    float:center;
    border-width:1px;
    border-style:groove;
    border-color:black;
    border-collapse:collapse;
    width:600px;
    }
    table.gridtable th{
    border-width:1px;
    padding:3px;
    border-style:solid;
    border-color:black;
    }
    table.gridtable td{
    border-width:1px;
    padding:3px;
    border-style:solid;
    border-color:black;
    }
    .oddrowcolor{
    background-color: black;
    }
    .evenrowcolor{
    background-color: red;
    }
    table.gridtable td.darkcol{
    border-top:0px;
    border-bottom:0px;
    border-right: 1px;
    }
    table.gridtable td.emptycol{
    border-bottom:0px;
    border-right: 1px;
    }

HTML& PHP: -

 <table class="gridtable" id="alternatecolor" align="center"
 <tr><th>disease Name/th><th>Gene Name/th><th>OMIM Number</th></tr>  
 <?php
    $dbhandle = mysql_connect($hostname, $username, $password) or die("Unable to connect to MySQL");
    $selected = mysql_select_db("missensencemuttation",$dbhandle) or die("Could not select disease");
    $result = mysql_query("SELECT DISTINCT * FROM `gene_data` ORDER BY disease_name");
        $last=" ";
    while($row = mysql_fetch_array($result))    

        $now=$row[2];
        if($last != $now){
                $rcnt=mysql_query("select count(gene_name) from gene_data where gene_name='$now'");
        if($rcnt==1){
        echo "<tr><td>";   
        echo "<a href='d1.php?d_name=".$row['disease_name']."'>".$row['disease_name'];
        echo "</a></td>";       
        echo "<td>".$row['gene_name']."</td>";
        echo "<td>".$row['ommi_number']."</td></tr>";
        }
        else{
        echo "<tr><td class='emptycol'>";   
        echo "<a href='d1.php?d_name=".$row['disease_name']."'>".$row['disease_name'];
        echo "</a></td>";       
        echo "<td>".$row['gene_name']."</td>";
        echo "<td>".$row['ommi_number']."</td></tr>";
        }
        }
        else
        {
        echo "<tr'>";
        echo "<td class='darkcol'>";   
        echo '&nbsp';
        echo "</td>";       
        echo "<td>".$row['gene_name']."</td>";
        echo "<td>".$row['ommi_number']."</td></tr>";
        }
        $last=$row[2];      

任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

也许我误解了,但看起来你想将oddrowcolorevenrowcolor应用于交替的行 - 但是在你的实际php / html中,我没有在任何地方看到这些类名。它们没有被放在行上,所以它们的规则不适用。只需将它们添加到php中相应的<tr>标签即可。 或者,您可以使用nth-of-type选择器应用规则而不更改您的php:

tr:nth-of-type(odd) {
    background-color: black;
}
tr:nth-of-type(even) {
    background-color: red;
}

答案 1 :(得分:0)

如果你想为每个表行添加替代颜色,那么一个简单的CSS应该这样做。这样,如果要动态插入新行,它将自动调整颜色。

.stripped-rows:nth-child(odd){
   background-color:red;
 }
.stripped-rows:nth-child(even){
   background-color:blue;
 }

和html ...

 <table>
 <tr class = 'stripped-rows'>
     <td>sad</td>
 </tr>
 <tr class = 'stripped-rows'>
  <td>sad</td>
</tr>
 <tr class = 'stripped-rows'>
   <td>sad</td>
</tr>

DEMO