首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IE 11 Bug -图片内标签内部形式

IE 11 Bug -图片内标签内部形式
EN

Stack Overflow用户
提问于 2013-12-11 16:39:08
回答 6查看 11.5K关注 0票数 23

在IE11中,下面的代码将按预期检查单选按钮:

代码语言:javascript
复制
<input type="radio" id="myRadio" />

<label for="myRadio">
    <img src="..." />
</label>

然而,围绕上面的<form>包装将破坏标签的功能。

This SO post为这个问题提供了一种解决方案,方法是使用pointer-events:none对图像进行样式化,并将标签设置为块级元素。

虽然这当然不是必要的,但它也禁用了处理鼠标事件的能力。

如果有人能为这个问题提供一个纯CSS解决方案,那将是非常感谢的。

PS:

值得一提的是,在IE11中,如果图像被设计为块级元素,那么pointer-events似乎失去了它的效果。

EN

回答 6

Stack Overflow用户

发布于 2014-07-03 11:18:19

我的标记看起来如下(类和其他多余的属性被删除了):

代码语言:javascript
复制
<li>
    <label>
        <figure>
            <img>
        </figure>
        <div>
            <label></label>
            <input type="radio">
        </div>
    </label>
</li>

这有点混乱,因为其中有些是由Drupal自动生成的。它在IE 11中不起作用,但我通过添加:

代码语言:javascript
复制
img {
    pointer-events: none;
}

我不需要改变任何其他的东西,我没有其他特殊的css-诡计,我可以看到。

票数 9
EN

Stack Overflow用户

发布于 2016-03-30 14:18:57

代码语言:javascript
复制
img {
    pointer-events: none;
    position: relative;
    z-index: -1;
}

这在我的案子里解决了。img将被放置在标签后面,但会“照透”。希望能帮上忙。

票数 2
EN

Stack Overflow用户

发布于 2014-10-27 11:07:48

你可以把图片放在标签的背景里。

代码语言:javascript
复制
<label  for="myField1" ><img src="image1.jpg"></label>

变成了

代码语言:javascript
复制
<style>
 #lblMyField1 {  
    background-image: url('image1.jpg');
    background-position: center center;/* depend..*/
    background-repeat: no-repeat; 
 } 
</style>

<label id="lblMyField1" for="myField1" >&nbsp;</div>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20524815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档