2009-10-08 67 views
0

我在字段集內部有一個字段集。每種類型的字段集在懸停時都會改變顏色。在Firefox中很好用,但在IE8兼容模式下,IE8和IE8中,當我將鼠標懸停在子字段上時,它會跳轉(看起來有些填充被刪除,但這不是我的CSS所說的)。在IE8中懸停時防止跳躍字段集

有人可以幫我弄清楚如何防止IE中的跳躍效應?爲什麼子集字段集在跳過時跳轉,而不是父字段集?

<!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> 
    <style type="text/css"> 
     fieldset.property { background-color: #EDF5FF; } 
     fieldset.property:hover { background-color: #C1DDFF; } 
     fieldset.service:hover { background-color:#EDF5FF; } 
    </style> 
</head> 
<body> 
    <fieldset class="property"> 
     Parent fieldset<br /> 
     Parent fieldset<br /> 
     Parent fieldset<br /> 
     <fieldset class="service"> 
      Child<br /> 
      Child<br /> 
      Child<br /> 
     </fieldset> 
     Parent fieldset<br /> 
     Parent fieldset<br /> 
     Parent fieldset<br /> 
    </fieldset> 
</body> 

回答

3

我也一樣,我不確定到底爲什麼IE會將子元素這種方式,而是由專門定義填充和很多時候,利潤率爲好,THI s是可以預防的。

fieldset {margin:0; padding:0;}

+0

任何人都知道這是否被認爲是在IE瀏覽器的錯誤,或者是由設計? – slolife 2009-10-08 20:29:00

+0

我不認爲這是一個錯誤。每個瀏覽器都以不同的方式呈現邊距和填充。通過爲這兩個屬性定義一個特定的值,每個瀏覽器都會根據CSS進行渲染。 – Slevin 2009-10-09 13:08:38

+0

不同的填充/邊距不是一個錯誤。這對我來說很好,並且會教會我將來使用重置css。懸停時出現的跳躍式兒童字段集似乎是一個錯誤IMO。 無論如何,感謝您的幫助 – slolife 2009-10-09 21:17:02

0

我仍然不知道爲什麼IE8使孩子神經質,但我發現修復:

如果我添加一個風格上明確設置一個字段的填充,該字段集當鼠標懸停保持不變:

/* Add to make rendering in IE and Firefox the same /* 
fieldset { padding:2px; }