【问题标题】:How to make Chrome and IE display block hyperlinks correctly如何让 Chrome 和 IE 正确显示阻止超链接
【发布时间】:2013-03-06 16:56:44
【问题描述】:

我一直使用以下代码使 链接填充其容器的内容。 chrome 和 IE 现在都显示 链接内容的大小。

我已经尝试过明确的像素高度和重要标签,但 chrome 仍然坚持使链接与内容的大小一致。该链接没有内容,因此显示为 0px 高度和宽度。

这就是我制作块超链接的方法?

HTML

<div class="mydiv">
    <a href="#"></a>
</div>

CSS

.mydiv {
    height: 50px;
    width: 50px;
    display: block;
}
.mydiv a {
    height: 100%;
    width: 100%;
    display: block;
}

【问题讨论】:

  • 这应该可以正常工作,虽然你有 .div(类 div)而不是 div(元素 div)
  • 似乎另一种样式正在应用显示:内联;到我的锚标签。 Firefox 接受我的块 chrome 忽略了我的更改。
  • 修复了抱歉是缓存问题。

标签: html css internet-explorer google-chrome anchor


【解决方案1】:

您应该从 div 中删除 .,。是类名的选择器,这里是直接div的写法

div {
height: 50px;
width: 50px;
display: block; background:red
}
div a {
height: 100%;
width: 100%;
display: block;
}

DEMO

【讨论】:

  • .div 只是一个例子,对象的类不同。
  • @DreamTeK 它也应该在这种情况下工作。检查这个jsfiddle.net/V6CPG/2
【解决方案2】:

你的意思是:this

HTML:

<div class="abc">
  <a href="#"></a>
</div>

css:

.abc {
height: 50px;
width: 50px;
display: block;
border-style:solid;
border-width:3px;
}
.div a {
height: 100%;
width: 100%;
display: block;
}

只需为 div 定义一个类并根据需要链接和设置样式。

【讨论】:

    【解决方案3】:

    你去 - 在 Chrome 和 IE 中测试并且在两者中都可以工作:

    这里是 HTML:

    <div class="abc">
        <a href="http://www.google.com"></a>
    </div>
    

    和 CSS:

    div.abc { display:block ;
        width:200px ;
        height:50px ;
        background:blue ;
    }
    
    .abc a { display:block ;
        width:100% ;
        height:100% ;
    }
    

    您可以在 div.abc 中编辑高度和宽度,超文本链接会相应调整。

    在这里演示:http://jsfiddle.net/PRZaX/

    【讨论】:

      【解决方案4】:

      我认为您应该从 Chrome 和 IE 的版本以及您的操作系统开始,而您提供的这段代码可以作为一种魅力。

      我知道,旧版本的 IE 在将锚点显示为块时存在一些问题,修复它的正确方法是设置假背景,例如:background: url(/);,但我很确定情况并非如此。

      如果您有任何其他样式表应用于您的页面,请提供信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-04-19
        • 1970-01-01
        • 2022-01-22
        • 1970-01-01
        • 2018-10-09
        • 2010-11-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多