2013-08-26 97 views
5

您能否看看this link並讓我知道爲什麼我無法更改懸停時li的背景顏色?無法更改li懸停上的背景顏色

<ul class="inline"> 
    <li>1</li> 
    <li>2</li> 
    <li>3</li> 
    <li>3</li> 
    <li>3</li> 
</ul> 

的CSS:

.inline li{ 
    width:18% !important; 
    background:#FFF !important; 
} 
.inline li: hover{ 
    background:#A5A5A5 !important; 
} 
+3

刪除li和hover之間的空間 – koningdavid

回答

8

你有懸停之前額外的空間。

.inline li:hover{ 
    background:#A5A5A5 !important; 
} 
3

Edited jsfiddle。刪除hover之前的空白區域。

.inline li:hover{ 

    background:#A5A5A5 !important; 
} 
0

在懸停前您有一個額外的空間。它應該是:

.inline li:hover { 
Stylings 
} 
5

空間li:hover之間是有效的CSS,但不是在這種情況下。使用li :hover將在您將鼠標懸停在li的任何後代上時應用樣式。你使用的是無效的CSS。元素和僞類之間不能有冒號。因此,通過使用li:hover,您可以在li懸停時指定樣式。

我也建議您不要使用!important,因爲它可能會在以後的道路上導致一些問題。使用更具體的DOM選擇器,如ul.inline li:hover

Fiddle

0

是因爲你正在使用在不叮裏重要並有之間的空間:懸停

.inline li{ 
    width:18%!important; 
    background:#FFF; 
} 

.inline li:hover{ 
    background:#A5A5A5!important; 
} 

演示:http://jsfiddle.net/NRZeD/14/