我正在使用jmenu.js并设置子菜单元素以获得透明度。问题是具有透明度的子元素显示父母的(即主菜单栏)背景。我想要的是在子菜单上有透明度,显示到页面背景。 CSS是:
.jMenu {
display: table;
margin: 0 0 0 50px;
padding: 0;
}
/* First level */
.jMenu li {
display: table-cell;
background: url('../images/tile_gray.png');
margin: 0;
}
.jMenu li a {
padding: 10px;
padding-right:55px;
display: block;
background-color: transparent;
color: white;
text-transform: uppercase;
margin-top:2px;
cursor: pointer;
font-size: 14px;
font-family: Myriad Pro, Lucida Sans, Segoe UI, Calibri, sans serif;
font-weight: bold;
text-shadow: 1px 1px 1px rgba(0,0,0,0.5);
}
/* Lower levels */
.jMenu li ul {
display: none;
position: absolute;
z-index:9999;
padding: 0;
margin: 0;
}
.jMenu li ul li {
background-color: #fff;
display: block;
padding: 0;
}
.jMenu li ul li.arrow {
background: url('../images/tile_pink.png');
padding: 0;
border-bottom: none;
padding-bottom: 5px;
margin-top: 10px;
}
.jMenu li ul li a {
font-size: 13px;
text-shadow: 0px 0px 0px rgba(0,0,0,0);
text-transform: none;
padding: 7px;
display: block;
border-top: 1px solid transparent;
text-decoration: none;
}
.tran {
background: rgba(120, 120, 120, .2);
}
.jMenu li ul li a.isParent {
background: url('../images/tile_darker.png');
}
.jMenu li ul li a:hover {
background: url('../images/tile_green.png');
}
已更新
我更改了css,使背景透明,而不是在锚点上,而是在li:
.jMenu li ul li {
background-color: #fff;
display: block;
background: rgba(0, 0, 0, .4);
padding: 0;
}
答案 0 :(得分:1)
您似乎在所有.jMenu li
上都有背景图片。即使你认为你只是将这个背景('... / images / tile_gray.png')应用到第一级,它也会泄漏到内部<li>
中
尝试将background-image: none;
添加到您的孩子li:
.jMenu li ul li {
background-color: #fff;
background-image: none;
display: block;
padding: 0;
}
这可能会有效,但如果没有实际操作且没有HTML,很难说清楚到底发生了什么。