Ну вообще говоря использовать один id для нескольких элементов это довольно грубая ошибка в css - для повторяющихся элементов можно и нужно использовать классы или, что не очень хорошо, переопределять сами теги, а чтобы не возникало в данном случае переопределять их в рамках исключительно контейнера.
В приведенном коде помимо всего прочего еще не описывается никак ни внутренние отступы для блока-контейнера (padding), ни его внешние поля (margin) что тоже неверно, т.к. при использовании float обязательно надо указывать как блок взаимодействует с окружающими его блоками.
Вообще для меню логично было бы задать либо один тег-контейнер (тот же <div id="idvir"> вполне подойдет) и уже для самих ссылок указать их поведение и способ отображения, либо, что еще логичнее с точки зрения удобства и "пуленепробиваемости" css и html кода использовать список (ul или dl для двухуровнего меню) в качестве контейнера.
В первом случае код будет такой:
html
Код:
<td background="pic/menu2.jpg"valign="middle" bgcolor="#000000">
<div id="idvir"><a class="ssil" href="#">О компании </a>
<a class="ssil" href="#">Новости </a>
<a class="ssil" href="#">Услуги </a>
<a class="ssil" href="#">Прайс-листы </a>
<a class="ssil" href="#">Контакты</a> </div> </td>
и css
Код:
#idvir a {float:left;display:block;padding:3px 5px;margin:0 3px}
a.ssil:link, a.ssil:visited {text-decoration:none;color:#33f}
a.ssil:hover, a.ssil:active {text-decoration:underline;color:#f0f}
А во втором случае могу посоветовать посмотреть уроки вот тут -
http://css.maxdesign.com.au/listutorial/