【问题标题】:IE6 transparency+radio button can't be clickedIE6透明度+单选按钮无法点击
【发布时间】:2010-06-03 15:27:45
【问题描述】:

IE6:当我在 div 中放置一个部分透明的图像时,该 div 中与图像的不透明像素重叠的单选按钮变得无法点击。示例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <style media="screen" type="text/css">
      div
      {
        position: relative;
        width: 500px;
        height: 300px;
        _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://upload.wikimedia.org/wikipedia/commons/thumb/f/fc/Olympic_flag_transparent.svg/200px-Olympic_flag_transparent.svg.png, sizingMethod='crop');
      }
      input
      {
        position: absolute;
        top: 40px;
        left: 60px;
      }
    </style>
  </head>
  <body>
    <div>
      <input type="radio" value="1" name="1"/>
    </div>
  </body>
</html>

如果您测试代码,您还可以尝试将按钮从 (60, 40) 移动到 (40, 40),其中图像是透明的,瞧,点击又恢复了。

此错误可能与IE6 links transparency bug 相关,也可能不相关,但我的知识不足以掌握任何相似之处。

我做错了什么吗?或者我该如何规避?除了删除_filter:progid,还有其他选择吗?

【问题讨论】:

    标签: css internet-explorer-6 transparency radio-button


    【解决方案1】:

    尚未找到任何真正解决问题的方法,因此请使用以下解决方法之一:

    • 在单选按钮所在的位置使图像 100 % 透明(保持良好的边距,它的形状可能不是“圆形”而是方形或矩形),
    • 完全删除图片,
    • 以上的组合。 :)

    【讨论】:

      【解决方案2】:

      您是否尝试过将单选按钮的 z-index 设置为高于透明 div 的 z-index?

      div
            {
              position: relative;
              width: 500px;
              height: 300px;
              z-index: 1;
      
              _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=http://upload.wikimedia.org/wikipedia/commons/thumb/f/fc/Olympic_flag_transparent.svg/200px-Olympic_flag_transparent.svg.png, sizingMethod='crop');
            }
            input
            {
              position: absolute;
              top: 40px;
              left: 60px;
              z-index: 999;
            }
      

      【讨论】:

      • 是的。显然你没有。请在回复之前测试您的代码。
      • 嘿,这是一个建议。我没有 IE 6 的副本来测试你的问题。如果您不喜欢有人提出可能的答案,请不要让他们为您完成工作。
      • 对不起,我反应过度了。我的最后一个问题被提出各种无关“建议”的人发送了垃圾邮件,我想我还是有点生气。 :)
      • 没问题。我们都有那些日子。抱歉,我帮不上忙。
      猜你喜欢
      • 1970-01-01
      • 2021-08-01
      • 1970-01-01
      • 2014-01-05
      • 2010-10-16
      • 2012-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多