Mi dite come mai non cambia il colore del link?

Il mio codice è questo:


<head>
<style type="text/css">
<!--
@import url("CSSAgenda.css");
-->
</style>
</head>

<body>
<table border="0" align="center">
<tr class="Tabella_intestazione">
<td width="159"><div align="center">
<div align="center">Cognome</div>
</div></td>
<td width="135"><div align="center">
<div align="center">Nome</div>
</div></td>

<?php

while ($row_vediricerca = mysql_fetch_assoc($vediricerca))
{

?>

<tr <?php
$data=$row_vediricerca['al'];
$data_unix=timestm($data); //trasformazione data in unix
$data_odierna= mktime(); //trasformazione data odierna in unix
$data0=timestm(0000-00-00); // trasformo quelli che hanno la data 0 in formato unix

if ($data_unix >= $data_odierna or $data_unix==$data0) {echo "class=\"sfondogiallo\"";} else {echo "class=\"sfondogiallo1\"";} ?>>
<td><?php echo $row_vediricerca['cognome']; ?></td>
<td><?php echo $row_vediricerca['nome']; ?></td>
</tr>

<?php
;}
?>

</table>


Il mio CSS è questo:

.sfondogiallo.....

.sfondogiallo1 {
background-color: #FFFFCC;
text-align: center;
text-decoration: line-through;
color: #999999;
}

.sfondogliallo1 a:link {
color: #CCCCCC;
background-color: #FFFFCC;
text-decoration:line-through;
}

.sfondogliallo1 a:visited {
color: #CCCCCC;
background-color: #FFFFCC;
text-decoration:line-through;

}


.sfondogliallo1 a:hover {
color: #999999;
background-color: #FFFFCC;
text-decoration:line-through;

}
.sfondogliallo1 a:active{
color: #999999;
background-color: #FFFFCC;
text-decoration:line-through;

} In pratica è come se applicasse solo sfondogiallo e sfondogiallo1 ma non considera link, hover visited ecc.

Mi aiutate?