具有动态子元素的 Css 嵌套计数器

标签 css css-counter

我在嵌套菜单中使用了 css 计数器。 自从 chrome 65 开始出现奇怪的错误。 基本上当子菜单项动态出现时, 计数器开始泄漏到父级的同级元素。

<style>
  ul {
    counter-reset: test;
  }

  ul li::before {
      counter-increment: test;
      content: counters(test, ".") " ";
  }
</style>

<button onclick="document.getElementById('submenu').style.display='none';">HIDE</button>
<button onclick="document.getElementById('submenu').style.display='block';">SHOW</button>

<ul>
  <li>aaaa
    <ul id="submenu" style="display:block;">
      <li>one</li>
      <li>two</li>
      <li>three</li>
    </ul>    
  </li>
  <li>bbbb</li>
  <li>cccc</li>
</ul>

https://jsfiddle.net/6ouvzhvd/14/

打开页面initialy时看到一个计数器,是正确的: enter image description here

这是动态显示时的样子(点击隐藏 -> 显示): enter image description here

还有其他人在使用最新的 chrome 时遇到过这个问题吗? 谢谢!

最佳答案

是的,这是 Chrome Bug。此处记录:https://bugs.chromium.org/p/chromium/issues/detail?id=822260 (这就是我找到你的帖子的方式)。

关于具有动态子元素的 Css 嵌套计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49516407/

相关文章:

css - 在 HAML 中启动有序列表

javascript - 一次选择一个单选按钮

html - iframe 中高度为 : 100% strech 的元素

javascript - jQuery 滚动效果无法按预期工作

html - 带有嵌套 div 的 SCSS 计数器

css - 计数器标识符为 "list-item"的奇怪浏览器行为

javascript - 遍历dom,next,prev

css - Shadow dom 中的样式元素

css - 计数器不会在 CSS 中递增