1

当您在 IE 中右键单击锚标记时,您通常会获得选项

“在新选项卡中
打开” “在新窗口中打开”
“目标另存为..”

在 IE8 中,如果锚标记的内容是具有“display:block”CSS 属性的 div 或 span,那么您不会获得这些选项。

我正在尝试很多组合,但我的想法已经不多了。例如。

    a.{
        border: 1px solid red;
        position: absolute;
        display: block;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        text-indent: -9999px;
        z-index: 1000;
    }

这将尝试用锚标签覆盖整个区域 - 但我看不到内容 - 它只是白色的!

这是现场看到的问题 http://sci.esa.int/planck/51553-cosmic-microwave-background-seen-by-planck/

它会影响右侧的“也可用作”组件 - 更改跨度显示的 div:块没有帮助。

4

1 回答 1

2

这似乎是一个有点古怪的最终结果,但我想这可能是因为(至少在某些 doctype 下),块元素在元素内是无效的<a>

(我记得严格模式下的xhtml在这方面特别烦人,但是我已经有一段时间没有使用它了,所以我的记忆可能是模糊的)

这样做的原因是因为<a>元素默认为 be display:inline,并且在元素block内部有 a 是无效的inline/

对此的解决方案是将<a>元素或其中的块(或两者,当然)设置为 inline-block :

display:inline-block;

试一试。希望能帮助到你。

于 2013-08-12T11:23:00.997 回答