sIFR悬停问题

时间:2009-11-19 14:40:07

标签: html css sifr

我正在使用无序列表进行导航,我想在其中使用sIFR(我知道不建议这样做,但现在没有其他选择)。列表项包含一个由sIFR替换的div。

HTML:

<ul class="topnav">
     <li class="category">
        <div>
           <a href="#" title="Home">Home</a>
        </div>
     </li>
     <li class="category>
        <div>
            <a href="#">Link</a>
        </div>
    </li></ul>

我使用这个sIFR配置:

sIFR.replace(myfont, {
selector: '.topnav li.category div',
  css: ['.sIFR-root { font-size:17px; }',
  'a:link { color:#a73759; text-decoration:none; }',
  'a:hover {color:#ffffff;}',
  ],
  wmode: 'transparent',
  fitExactly: true, 
 });

悬停正在运行,但只有当我将鼠标悬停在实际的Flash文件上时。当我将鼠标悬停在列表项上时,文本颜色应为白色,列表项是替换div的父项。我该如何做到这一点?

4 个答案:

答案 0 :(得分:0)

我没有使用过sIFR,但似乎您需要修改selector,因为它只针对列表项中的<div>

或者只是因为你需要添加li:hover a { color: white }(只记得IE6不支持这个,它也可能会产生误导,因为点击<li>实际上不会触发链接)

答案 1 :(得分:0)

我是否正确地假设你想要在悬停时用另一部Flash电影替换Flash电影?在这种情况下,sIFR会产生问题,因为sIFR不会呈现未在页面加载中显示的元素。您可以通过使用CSS隐藏带有文本的p元素来测试它,然后尝试sIFR该文本,它将无法工作。

无法呈现不可见元素的原因,imho,与sIFR无法弄清楚元素应该如何看起来正常的事实有关,因此不知道如何替换该元素。

答案 2 :(得分:0)

最简单的答案是Flash影片应该是标签的全宽和高度。

复杂的答案是你使用JavaScript来告诉Flash电影改变颜色,但这几乎不值得。

答案 3 :(得分:0)

我有完全相同的问题,这是我修复它的方法:

<ul class="navContainer">
<li><div><a href="...">Link</a></div></li>
</ul>

sIFR.replace(myriadpro, {
  selector: 'ul.navContainer li div ',
  css: '.sIFR-root { background-color: transparent; color: #ffffff; font-weight: bold;text-align:center;} a {color: #ffffff; text-decoration:none;} a:hover {color:#482566; background: #f4f3f8;text-decoration:none}',
  wmode: 'transparent',
  tuneHeight: 15,
  offsetTop: 8,
  onRollOver: function(fi){
      fi.changeCSS( '.sIFR-root {background-color: #f4f3f8; color: #482566; font-weight: bold;text-align:center;} a {color: #482566; text-decoration:none;} a:hover {color:#482566; background: #f4f3f8;text-decoration:none}');
    },
  onRollOut: function(fi) {
      fi.changeCSS( '.sIFR-root { background-color: transparent; color: #ffffff; font-weight: bold;text-align:center;} a {color: #ffffff; text-decoration:none;} a:hover {color:#482566; background: #f4f3f8;text-decoration:none}');
    }
});

tuneHeight使影片符合我LI的大小,而offsetTop将内部链接推入垂直居中。