把ul li{}里面的background去掉;
或者:把padding-left和padding-right移动到ul li a{}里面;
或者:把ul li a{}里面的background去掉,然后把ul li a:hover改为ul li:hover.
padding那部分这当然是不会显示背景的啦,又不是用li:hover这样,想要显示,那把padding移到a里面吧。
onmouseout="this.style.background=#000" onmouseover="this.style.background=#2d4b45"
上面是鼠标没经过的时候 #000
下面是鼠标经过的时候的颜色#2d4b45