【问题标题】:href not working in Firefox and operahref 在 Firefox 和 Opera 中不起作用
【发布时间】:2012-05-15 16:06:40
【问题描述】:

我正在使用 Css3 效果来使我的菜单看起来更漂亮,但这没有问题,但是我不知道由于一些奇怪的原因,当我单击菜单项时,它们不会重定向到所需的页面,即我的 href="abc. aspx" 在 Firefox 、 Opera 中不起作用,但在 Chrome 中运行良好。这是我使用的 Css3 代码

#Menu a:active,
#Menu a.active:before,#Menu a:hover:before
{
    Content: ' ';
    position:absolute;
    z-index:-1;
    width:0px;
    height:0px;
    left:50%;
    top:50%;
    border-radius:50%;
    box-shadow:0 0 35px 30px #ADD7E7;

}

我的菜单看起来像

但是,当我删除 Css3 样式时,href 有效。任何人都可以帮助我解决为什么会发生这种情况。 欢迎提出任何建议。

谢谢

【问题讨论】:

    标签: firefox google-chrome css opera


    【解决方案1】:

    问题可能源于样式 #Menu a:active 以及伪元素。尝试将它们分开,甚至干脆从定义中删除 #Menu a:active。然后您可以将您的 z-index 设置回 -1,因为它只会应用于伪元素。

    我已经设置了jsfiddle here

    【讨论】:

    • 非常感谢,它可以工作,但是在歌剧中,如果我将我的 a 元素的位置设置为相对,效果会像我之前所说的那样向左侧移动,如果我将 li 元素设置为相对的效果看起来不错,但是 href 不起作用。抱歉给您带来了麻烦。非常感谢。
    • 通过设置 'a' 元素的 z-index 1 和活动状态样式,它工作得很好,而且我还使用了 li 元素的相对位置来使效果以歌剧为中心。现在一切都很好。非常感谢,非常感谢您的时间。谢谢伙计。
    • :) 你的帮助让我很开心。谢谢
    【解决方案2】:

    这很可能是因为您的 css 中的这一行:

    z-index:-1;
    

    默认图层是文档的0,但由于悬停时您将其设置为-1,因此您将无法点击它。

    【讨论】:

    • 所以我应该将它设置为某个正数左右。这能解决我的问题吗。
    • @freebird:是的,使用正数,相应地应用例如父控制器和该元素,以便您能够点击它。
    • 所以你的意思是我应该在 hover 上设置一个更高的 z-index ,以便它可以点击。
    • 如果可能的话,你能帮我解决这个stackoverflow.com/questions/10477517/…
    • @freebird:玩 z-index。例如包含你的菜单的父元素,给它z-index of 1,你的菜单0。另请注意,要使z-index 工作,您还需要申请position 例如position:relative;
    【解决方案3】:

    z-index:-1 将元素放在主体后面。因此,它不能被点击,因为身体正在遮挡它。

    但是,如果您还没有为正文定义背景颜色,这会有点模棱两可,因为透明背景颜色可能无法捕捉到点击。

    避免负 z 索引。它们可以在正数中随心所欲地升高,比负数更可靠。

    【讨论】:

    • 是的,我还没有为我的身体定义背景颜色,我现在该怎么办。
    • 正如我所说,使用积极的z-index。如果您需要在其他东西后面添加一些东西,请在“其他东西”上放一个更大的z-index
    • 我的 linl 的 z-index 为 50 ,悬停时我将其设为 100 ,这在 firefox 中对我有用,但在 opera 中无效。
    • opera的订单版本在支持z-index方面有问题...你用的是哪个版本...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多