no, no necesitas javascript ni tampoco es necesario que uses una tabla para lograr ese efecto.
Te paso un ejemplo de como hacerlo con CSS.
Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Menu</title>
<style type="text/css">
<!--
ul#menu {
margin:0;
padding:0;
list-style:none;
}
ul#menu li a {
display: block;
height:100%;
background-color:#999;
padding:5px;
}
ul#menu li a:hover {
background-color:#666;
border: 1px solid #000;
}
-->
</style>
</head>
<body>
<ul id="menu">
<li><a href="#">Enlace 1</a></li>
<li><a href="#">Enlace 2</a></li>
<li><a href="#">Enlace 3</a></li>
<li><a href="#">Enlace 4</a></li>
</ul>
</body>
</html>