【发布时间】:2012-03-15 15:44:18
【问题描述】:
我在sitepoint page 和quirksmode page 中读到了关于新的:empty 伪类的信息。
Sitepoint 表示即使附加了动态内容,空样式仍然会生效。值得注意的是,Firefox 就是这种行为方式。
Quirksmode 表示当它填充一些元素或文本时,它会丢弃空状态。这个网站上的演示可以在我的浏览器(chrome 19)中运行。所以我假设只有 firefox 会出错。
但是我的插件中有这段代码,它用项目动态填充列表,它似乎不起作用,here's a fiddle 附加列表项目,即使你点击按钮,项目也不会' t 出现,直到您尝试在控制台中调试它(当您单击元素树中的 <li> 时,它们神奇地出现)。
为什么会发生这种情况,是否有“强制丢弃”空样式的解决方法?
我知道还有其他方法可以做我正在做的事情(目前正在做这些“其他方法”之一),但是:empty 方法要容易得多。
更新:
添加了删除项目按钮。当最后一项被删除时,列表应该消失 - 仍然不起作用。嗯..我会尝试在另一个浏览器中检查。
修复
使用:empty 和display:none 的临时修复/替代方法是使元素具有零width、height、borders、margins 和paddings。此外,position:absolute 将其从流程中删除。
【问题讨论】:
-
直到现在我还没有遇到
:empty,并为一个有趣的问题 +1。 -
嗯,它们出现在 FX10 中。
标签: css pseudo-class