gpt4 book ai didi

css - 孙子 :focus Not keeping Parent Open Even With ~ Selector

转载 作者:太空宇宙 更新时间:2023-11-04 12:56:04 27 4
gpt4 key购买 nike

我正在进行一个小实验。我正在尝试使用 :focus 创建一个没有 javascript 的 onclick 菜单。我遇到的问题是孙子,单击它仍然会关闭父级。我尝试使用 ~ 选择器使其保持打开状态,但它不起作用,我不明白为什么。

<nav id="main-menu">
<ul>
<li><a href="">Menu 1</a></li>
<li tabindex="0" class="onclick-item"><span>Menu 2</span>
<ul class="onclick-show-content">
<li><a href="#">Sub-Menu 1</a></li>
<li tabindex="0" class="onclick-item"><span>Sub-Menu 2</span>
<ul class="onclick-show-content">
<li><a href="#">Sub-Sub-Menu 1</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#">Menu 3</a></li>
<li><a href="#">Menu 4</a></li>
</ul>
</nav>

.onclick-item { outline: none; }
.onclick-item:focus {
pointer-events: none;
}
.onclick-item > .onclick-show-content {
overflow: hidden;
max-height: 0;
-webkit-transition: all .5s ease-in-out;
-moz-transition: all .5s ease-in-out;
transition: all .5s ease-in-out;
}
.onclick-item:focus > .onclick-show-content, .onclick-item:focus ~ .onclick-show-content {
max-height: 540px;
pointer-events: auto;
}

代码笔:http://codepen.io/anon/pen/iuhtn

最佳答案

当您点击孙子时,焦点就会从其祖父上移开。这导致 :focus > 规则不再适用于祖 parent 。

~ 选择器无法按照您的使用方式工作,因为没有 .onclick-show-content 元素跟随 的兄弟元素.onclick-item 元素。您拥有的结构似乎也不利于使用 ~ ,因为它是基于父子的,而不是基于 sibling 的。

关于css - 孙子 :focus Not keeping Parent Open Even With ~ Selector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25819343/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com