我遇到了IE错误。 CSS计数器属性在IE9中不适用于页面加载时隐藏的元素(例如制表符)。
css counter not working in internet explorer for hidden content - how to fix?
正如我上面发布的那样,我已经能够通过使用JavaScript设置一些内联CSS来解决这个问题。我将padding-left设置为0(即使元素已经没有左边的填充),当它被取消隐藏时。这使IE'重绘'然后正确应用元素和CSS。
然而,这不是理想的解决方案。如果设计更改为在元素上留下填充,那么我的JavaScript修复将破坏布局。我可以用什么方法来使IE'重绘'元素?有没有标准的方法来做到这一点?
答案 0 :(得分:6)
在JavaScript中请求/调用时,所有[the properties or methods found at this link]都将触发浏览器同步计算样式和布局*。这也称为回流或布局颠簸,是常见的性能瓶颈。
我不想在这里发布整个列表以避免抄袭,因为我基本上没有在答案中添加任何内容;我只是指着你。
然而,我会说保罗爱尔兰警告说使用这些是“常见的性能瓶颈”,它们可以在战略上用于在需要时强制回流。这在特定于浏览器的场景中特别有用。
如果你想将重排限制在IE9,你需要在feature detection check内包含布局抖动调用。