Scusate se vi stresso!

Ho cercato nel forum senza trovare risposta quindi apro una discussione per i futuri ricercatori
Allora, ho un top menu, composto da 4 voci. L'immagine di fondo e il colore di rollover, si adattano al testo del bottone. Io vorrei invece che fosse di X pixel.
Vi copio il codice:
#topnav{ height: 46px; width:980px; margin: 0px; padding:0px; margin-top:8px; font-family:Arial, Helvetica, sans-serif; font-size:16px; font-weight: bold; text-transform:uppercase; }
#topnav ul { margin: 0px; margin-top: -30px; padding: 0px 195px; width: auto; float: left; list-style-type:none; }
#topnav ul li{ margin: 0px; padding: 0px; height: 42px; float: left; position: relative; margin-top:10px; margin-left:7px; }
#topnav ul li a{ padding: 0 0 0;
text-align:center;
text-decoration:none;
font-weight:bold;
font-size:18px;
text-transform:none;
color:#ffffff;
padding:13px 20px;
*padding:24px 24px 23px 24px;
background:url(../images/menu_button_bg.jpg) no-repeat right; }
#topnav ul li a:hover{ background-color: #444444; text-decoration: none; font-weight: bold; color: #fff; }
#topnav ul li ul ul { margin: -50px 0 0 297px; z-index: 100; }
#topnav ul li li { width:auto; height: 30px; margin-left:0px; -webkit-border-radius: 8px; -moz-border-radius: 8px;}
#topnav ul li li a { color: #FFFFFF; text-transform: none; display: block; background: none; width: 277px; border-left: 0px; padding: 0px 10px 0px 10px; height:30px; line-height:30px; -webkit-border-radius: 8px; -moz-border-radius: 8px; }
#topnav ul li li a:hover{ background: none; background-color: #FFFFFF; left: 0; width: 277px; padding: 0px 10px 0px 10px; height:30px; }
#topnav ul li ul { left: -999em; top: 26px; left: 0; display: block; height: 36px; width: 277px; position: absolute; z-index: 99; left: -999em; clear: left; margin-top: 0px; margin-left: 0px; padding-left:0px; }
#topnav ul li:hover ul ul, #topnav ul li:hover ul ul ul { left: -999em; }
#topnav ul li:hover ul, #topnav ul li li:hover ul, #topnav ul li li li:hover ul { left: auto; }
#topnav ul.menu li{
background-image:none;
}
Ho provato a mettere width: 35 praticamente ovunque e a togliere i vari width:auto ma niente