Я бы предложил сделать меню с неупорядоченным списком вместо таблиц. Примерно так:
HTML:
<ul id="my_menu">
<li><a href="linktopage" title="titleofpage">Name of Page 1</a></li>
<li><a href="linktopage" title="titleofpage">Name of Page 2</a></li>
<li><a href="linktopage" title="titleofpage">Name of Page 3</a></li>
<li><a href="linktopage" title="titleofpage">Name of Page 4</a></li>
</ul>
CSS:
ul#my_menu, ul#my_menu li {list-style: none;}
ul#my_menu li {display: block; float: left; width: 100px; height: 100px;}
ul#my_menu li a {display: block; text-decoration: none; color: #ccc; background: url('url_of_gradient') repeat-x; padding: 70px 10px 10px 10px; width: 80px; height: 20px;}
ul#my_menu li a:hover {background: url('url_of_hover_gradient') repeat-x;}
Попробуйте что-то вроде этого, установив градиентное изображение (вам придется сделать это) в качестве фона для ссылок. Затем создайте другое изображение для состояния наведения. Вам также придется настроить высоту и ширину по своему вкусу.
Для этого не требуется JavaScript.