2011-03-02 30 views
2

我不知道,这将是很容易,而不只是显示你所以这里要说明一下是一个例子 -IE7错误和嵌套UL的和CSS滤镜

http://jsfiddle.net/46gL8/1/

当FF,浏览器中查看,并IE8/9例子按预期工作。在IE7中查看时,嵌套的UL呈现在父级内部,尽管两者都被绝对定位。像z-index这样的东西没有任何区别,唯一的解决方法是从影子类中删除filter:行。

我想如果在IE7中渲染一个常规的边框或东西就没有问题,但如果有人有任何见解,这将是非常棒的!

+1

真的,你最好打赌是放弃过滤器,只有现代浏览器显示下拉阴影。将会为您节省很多麻烦。 http://dowebsitesneedtolookexactlythesameineverybrowser.com/ – Moses 2011-03-02 18:18:26

+0

是的,我很满意,只是在IE7中放弃对阴影的支持,只是好奇地看看有没有人知道这些含糊不清的过滤器。至于这个问题的答案,大多数SO用户会同意这种看法,但大多数营销部门会不同意;) – HurnsMobile 2011-03-02 18:24:52

+0

@Moses说什么,这是渐进式增强和优雅降级。 – 2011-03-08 06:56:20

回答

2

它看起来像过滤器切断了所有过滤框外的内容。如果从主菜单的层次结构中删除子菜单,它确实有效。见:http://jsfiddle.net/wyDTQ/

当然,我不知道你是如何构建你的菜单,所以这可能不是你想要的。但它确实解决了您的问题。

+0

这是我已经结束了生产版本,它工作正常。我打开赏金看看是否有人能够发现错误本身。 – HurnsMobile 2011-03-10 13:46:52

+0

好吧,我明白了。我无法说明IE7的过滤器的具体内部工作原理,大概IE7只能渲染过滤器周围的过滤器,而不是盒子过滤器,抱歉。 – Berklee 2011-03-10 15:33:00