2010-11-24 37 views
1

這是我的第一個網站IM工作:www.olgoya.com垂直菜單不會在IE8工作,如果背景是透明的

的問題是,除了IE8所有主要的瀏覽器中顯示的子菜單,以及當鼠標懸停在'portfolio'item。我可以弄清楚的是,問題是父對象的不透明度設置,如果我刪除它,IE也能夠顯示子菜單。

父對象格式:

ul, li{text-align:right; margin:0; padding:0; list-style:none;} 
#menubg{position:absolute;top:1px;width:130px;left:25px;background:#000;opacity:0.5;filter:alpha(opacity=50);-khtml-opacity: 0.5;-moz-opacity: 0.5;bottom:1px;z-index:3} 

垂直菜單格式:

/* 
Author: Craig Erskine 
Description: Dynamic Menu System - Vertical 
*/ 

ul#navmenu-v,ul#navmenu-v li,ul#navmenu-v ul { 
width: 130px; /* Menu Width */ 
margin: 0; 
list-style: none; 
} 

ul#navmenu-v li { float: left; position: relative; width: 100%; } 
ul#navmenu-v li.iehover { z-index: 1000;/* IE z-index bugfix */ } 

ul#navmenu-v ul { 
display: none; 
position: absolute; 
top: 0; 
left: 100%; 
z-index: 9999; 
} 

/* Root Menu */ 
ul#navmenu-v a { 
/* 
border-top: 1px solid #FFF; 
border-right: 1px solid #FFF; 
*/ 
padding: 6px; 
display: block; 
/* 
background: #DDD; 
color: #666; 
font: bold 11px Arial, sans-serif; 
*/ 
text-decoration: none; 
height: 1%; 
} 

/* Root Menu Hover Persistence */ 
ul#navmenu-v a:hover,ul#navmenu-v li:hover a,ul#navmenu-v li.iehover a { 
background: #444; 
/* color: #FFF; 
border-right: 1px solid #000; 
border-left: 5px solid #000; 
*/ 
} 

/* 2nd Menu */ 
ul#navmenu-v li:hover li a,ul#navmenu-v li.iehover li a { 
float: none; 
background: #000; 
} 

/* 2nd Menu Hover Persistence */ 
ul#navmenu-v li:hover li a:hover,ul#navmenu-v li:hover li:hover a,ul#navmenu-v li.iehover li a:hover,ul#navmenu-v li.iehover li.iehover a { 
background: #999; 
} 

/* 3rd Menu */ 
ul#navmenu-v li:hover li:hover li a,ul#navmenu-v li.iehover li.iehover li a { 
background: #999; 
} 

/* 3rd Menu Hover Persistence */ 
ul#navmenu-v li:hover li:hover li a:hover,ul#navmenu-v li:hover li:hover li:hover a,ul#navmenu-v li.iehover li.iehover li a:hover,ul#navmenu-v li.iehover li.iehover li.iehover a { 
background: #666; 
} 

/* 4th Menu */ 
ul#navmenu-v li:hover li:hover li:hover li a,ul#navmenu-v li.iehover li.iehover li.iehover li a { 
background: #666; 
} 

/* 4th Menu Hover */ 
ul#navmenu-v li:hover li:hover li:hover li a:hover,ul#navmenu-v li.iehover li.iehover li.iehover li a:hover { 
background: #333; 
} 

/* Hover Function - Do Not Move */ 
ul#navmenu-v li:hover ul ul,ul#navmenu-v li:hover ul ul ul,ul#navmenu-v li.iehover ul ul,ul#navmenu-v li.iehover ul ul ul { display: none; } 
ul#navmenu-v li:hover ul,ul#navmenu-v ul li:hover ul,ul#navmenu-v ul ul li:hover ul,ul#navmenu-v li.iehover ul,ul#navmenu-v ul li.iehover ul,ul#navmenu-v ul ul li.iehover ul { display: block; } 

請檢查並告訴我,我怎麼能有透明的菜單中的強大的IE呢!

回答

0

好醇'Internet Explorer,它缺乏不透明度的支持!謝天謝地,IE9支持不透明。在此期間,你有時可以解決這個獲得通過使用jQuery設置不透明度:

$('#menubg').css('opacity', '0.5'); 

UPDATE
自認爲不爲你工作,你必須做的就是創建一個1px的寬度, 1px高度.png,顏色爲#000,不透明度爲50%。然後使用這個CSS規則:

#menubg { background:url(/path/to/png.png) repeat;} 

並擺脫那個過濾器,這是魔鬼。

+0

感謝Stephen的快速回答,但它並沒有解決我的問題。任何其他想法? – inspiral 2010-11-24 22:05:43