在为png应用IE6过滤器后修复不可点击内容的首选解决方案是什么?

<div id="calendar">
  <p>Text</p>
  <div class="section">blah</div>
</div>
我正在将PNG应用于#calendar,在IE6中我使用过滤器,但它使内容无法点击 - 我相信这方法是强制内部的所有内容(例如位置:相对)并具有z-index + hasLayout但有时它不起作用。 我应该将所有东西包装在另一个div中并将png BG应用到这样的兄弟节点,或者是什么?
<div id="calendar">
  <div id="calendar-bg"></div>
  <div id="calendar-content">
    <p>Text</p>
    <div class="section">blah</div>
  </div>
</div>
然后强制calendar-bg绝对定位并且100%宽度/高度,并且相对位置#calendar-content在它上面?或者主流png修复脚本(ala htc,jquery.pngFix)是否有其他隐藏方式?     
已邀请:
这确实是我遇到的这个问题的唯一正确解决方案。您不能依赖第一个解决方案(相对定位子项),因为IE中的不透明度过滤器会抛出所有子元素,因此子元素不可单击。 因此,只需确保png不在可点击元素的父元素中。 因此,使用属性“position:relative”(或绝对值,取决于您的布局)创建父级,并为背景和实际内容插入两个子级。 例:
<div id="calendar">
   <div id="calendar-bg"></div>
   <div id="calendar-content">
       <p><a href="#">Text</a></p>
   </div>
</div>
   #calendar {position:relative; }  #calendar#calendar-bg {     位置:绝对;     左:0;     顶部:0;     身高:100%; / *或者如果你知道它们的高度和宽度(以像素为单位)* /     宽度:100%; }  #calendar#calendar-content {     位置:相对;     z-index:1; }       
  我相信围绕这个的方法是强制内部的所有内容(例如位置:相对)并且具有z-index + hasLayout但有时它不起作用。 位置:相对不触发hasLayout。你应该尝试像
zoom:1
这样简单的z-index。 我很确定(从我处理类似问题的记忆中)试图在IE6中的png之上相对定位东西不起作用,但是指定z-index会起作用。     

要回复问题请先登录注册