html - Firefox 不读取嵌套元素的背景

标签 html css firefox

我在使用 Firefox 时遇到了一个奇怪的问题,我正在创建一个最多三层的菜单,并且在 chrome 中一切正常,但是在 Firefox 中单击“一级菜单”后,会打开一个包含两个元素的 ul ,当我点击“二级菜单”时,这个元素的背景色(灰色)突然消失,变成深灰色。

CSS:

.leftpanel
{
    width: 230px;
    float: left;
    background-color: #282828;
}

.leftpanel>ul
{
    padding-top: 10px;
}
.leftpanel li
{
    width: 230px;
}

.leftpanel li>a
{
    display: block;
}
.leftpanel ul a 
{ 
    color: #999; 
    padding: 10px 20px; 
    font-size: 13px; 
}
.leftpanel ul a span { margin-right: 10px; }
.leftpanel ul > li > a { border: 0; border-bottom: 1px solid #232323; }
.leftpanel ul > li > a:hover,
.leftpanel ul > li > a:focus { background-color: #2c2c2c; color: #fff; border-bottom-color: #232323; }
.leftpanel ul > li { margin-bottom: 0; }


.leftpanel ul > li.expand ul { background: #eee; }
.leftpanel ul > li.expand > a {
    background-image: url(../images/droparrow.png); background-repeat: no-repeat; background-position: right 19px; }

.leftpanel ul .expand ul li a  {
    display: block; font-size: 13px; padding: 7px 10px 7px 30px; color: #333;  
}
.leftpanel ul .expand ul li a:hover { text-decoration: none; background-color: #fff; color: black; border-bottom: 1px solid black;}
.leftpanel ul .expand ul ul li { border-right: 0; }
.leftpanel ul .expand ul ul li a { padding-left: 40px;}

.leftpanel ul > li.active > a { background-color: #5c0154 ; color: #fff; }
.leftpanel ul > li.active > a:hover { background-color: #5c0154; }
.leftpanel ul .expand ul li.active a { background-color: #972f8e; color: white; }

它发生的 HTML 部分:

<li class="expand">
                <a href="#">First Level Menu</a>
                <ul>
                    <li class="expand">
                        <a href="#">Second Level Menu</a>
                        <ul>
                            <li>
                                <a href="page3.html">Third Level Menu</a>
                            </li>
                            <li>
                                <a href="bla.html">Another Third Level Menu</a>
                            </li>
                        </ul>
                    </li>
                    <li class="expand">
                        <a href="#">Another Second Level Menu</a>
                        <ul>
                            <li>
                                <a href="bla.html">Third Level Menu</a>
                            </li>
                            <li>
                                <a href="bla.html">Another Third Level Menu</a>
                            </li>
                        </ul>
                    </li>
                </ul>
            </li>

你可以在这里看到它http://jsfiddle.net/qWLTS/

有人可以帮忙吗?这让我发疯..

最佳答案

我从你的 CSS 中删除了这两行,并且在 FF 上都运行良好,但没有在 chrome 上测试。

.leftpanel ul > li > a:hover,
.leftpanel ul > li > a:focus { background-color: #2c2c2c; color: #fff; border-bottom-color: #232323; }

关于html - Firefox 不读取嵌套元素的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21664840/

相关文章:

javascript - 如何使用 jQuery 为元素设置类?不想添加/删除类

javascript - 如何让我的底部导航栏粘在我的顶部导航栏上?

java - 使用自签名 SSL 证书时,无法使用远程 Selenium WebDriver + Jenkins + FireFox 在 Java 上运行自动测试

javascript - 我的 Javascript 正在切换所有元素,而不仅仅是一个

javascript - Jumi 插件似乎没有加载 jQuery 和在 joomla 1.5 中用 css 调用的图像

foreach 循环中的 PHP 按钮

html - 从 firefox 打开硬盘驱动器上的直接文件(文件 :///)

php - Firefox 中奇怪的文本突出显示

html - 隐藏其他框阴影的背景颜色

jquery - 网站在移动设备上没有响应