首页 > 解决方案 > 使用不带href的锚元素来切换单独元素(div)的“隐藏”属性,不使用JavaScript

问题描述

我最近一直在浏览器中禁用 JS,出于好奇,想看看一些网站是如何处理它的,并且根据我所知道的,特别是在一个网站上发现了一些似乎不可能实现的功能。

如果有帮助,可以提供更多上下文,但源代码片段如下所示:

<a class="expando-button toggleImage video-muted collapsed collapsedExpando" title="" data-host="gfycat"></a>

^^ 这是一个小图标的标记,当单击它时,会从一个兄弟 div 元素中删除 hidden 属性,几个兄弟之间:

<div hidden="" class="res-expando-box" style="min-height: 20px" data-host="gfycat">
            <div class="res-expando-box-inner"></div>
        </div>

^^嵌套在该 div 内的某个地方是一个视频元素,它显示一个 gif。单击锚元素时,“隐藏”属性在该外部 div 中打开/关闭,我无法弄清楚发生这种情况的机制。

对于这些元素中的任何类,我在 Chrome 的开发工具中看到的所有 CSS 都没有给我任何与“隐藏”属性有关的任何线索而且我在 CSS 或 HTML 文档中找不到任何会导致让我弄清楚这样的事情怎么可能发生。

显然,如果不了解更多关于这个特定背景的信息,可能很难准确地说出这是如何完成的,但我希望对如何完成这样的事情有一些一般性的想法。

所以,更一般地说,有没有办法使用锚元素来切换单独元素的属性,没有所述锚元素的“href”属性,也没有 JavaScript?

标签: javascripthtmlcss

解决方案


推荐阅读