html5 <details></details>
元素提供了一种创建可折叠内容的简洁方法,但它提出了一个重要的可用性挑战:针对崩溃的<details></details>
>
钥匙要点:
- 元素虽然有用,但却遇到了针对隐藏内容的哈希链接的可用性问题。
<details></details>
polyfill有效地模拟不支持的浏览器的功能。 -
当哈希链接指向倒塌区域内的元素时,多填充的有效性被损害。 该页面保留在顶部,遮盖了目标。
<details></details>
递归函数通过自动扩展相关的 元素来解决这一问题。 <details></details>
<details></details>
元素与
属性迫使内容最初可见。 目前,只有Chrome完全支持<details></details>
。 下图说明了Chrome的渲染:<summary></summary>
<summary></summary>
open
<details></details>
创建一个polyfill
基本的多填充通过>属性检测天然支持。 本机实现不需要手册属性更新,但是ARIA属性仍然需要管理。 典型的结构看起来像:
open
脚本管理open
属性,并将其用作视觉崩溃的CSS选择器:
<details open="open"> <summary>This is the summary element</summary> <div>This is the expanding content</div> </details>
包装aria-expanded
简化了管理
details > div[aria-expanded="false"] { display: none; }属性,尤其是对于像IE7这样的旧浏览器,需要其他样式处理。
>函数处理键盘中的浏览器不一致点击事件触发:<div>
<code>aria-expanded
display
addClickEvent
突出显示哈希问题
function addClickEvent(node, callback) { // ... (function body as in original article) ... }
核心问题是当哈希链接(例如#首先要素)靶向崩溃区域内的元素时出现的。该页面不滚动到目标;它保持在顶部,使目标隐藏。
修复哈希问题<details></details>
函数解决了以下问题: 此函数递归扩展了包含目标的任何祖先 结论 这个增强的解决方案,称为“综合”,超出了基本的多填充。它提高了所有浏览器的可用性和可访问性,解决了 经常询问有关HTML详细信息元素的问题(常见问题解答)
(原始输入的FAQ部分保持不变。)<details open="open">
<summary>This is the summary element</summary>
<div>This is the expanding content</div>
</details>
<details></details>
元素。 在页面加载中为location.hash
和内部链接单击。 为了确保可靠的滚动,在扩展后使用window.scrollBy
,将目标定位在视口内。 保持原始的location.hash
行为(在页面刷新上没有自动滚动)。<details></details>
>元素的固有局限性。
以上是修复详细信息元素的详细内容。更多信息请关注PHP中文网其他相关文章!

JavaScript字符串替换方法详解及常见问题解答 本文将探讨两种在JavaScript中替换字符串字符的方法:在JavaScript代码内部替换和在网页HTML内部替换。 在JavaScript代码内部替换字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 该方法仅替换第一个匹配项。要替换所有匹配项,需使用正则表达式并添加全局标志g: str = str.replace(/fi

利用轻松的网页布局:8个基本插件 jQuery大大简化了网页布局。 本文重点介绍了简化该过程的八个功能强大的JQuery插件,对于手动网站创建特别有用

因此,在这里,您准备好了解所有称为Ajax的东西。但是,到底是什么? AJAX一词是指用于创建动态,交互式Web内容的一系列宽松的技术。 Ajax一词,最初由Jesse J创造

10款趣味横生的jQuery游戏插件,让您的网站更具吸引力,提升用户粘性!虽然Flash仍然是开发休闲网页游戏的最佳软件,但jQuery也能创造出令人惊喜的效果,虽然无法与纯动作Flash游戏媲美,但在某些情况下,您也能在浏览器中获得意想不到的乐趣。 jQuery井字棋游戏 游戏编程的“Hello world”,现在有了jQuery版本。 源码 jQuery疯狂填词游戏 这是一个填空游戏,由于不知道单词的上下文,可能会产生一些古怪的结果。 源码 jQuery扫雷游戏

本教程演示了创建通过Ajax加载的动态页面框,从而可以即时刷新,而无需全页重新加载。 它利用jQuery和JavaScript。将其视为自定义的Facebook式内容框加载程序。 关键概念: Ajax和JQuery

本教程演示了如何使用jQuery创建迷人的视差背景效果。 我们将构建一个带有分层图像的标题横幅,从而创造出令人惊叹的视觉深度。 更新的插件可与JQuery 1.6.4及更高版本一起使用。 下载

此JavaScript库利用窗口。名称属性可以管理会话数据,而无需依赖cookie。 它为浏览器中存储和检索会话变量提供了强大的解决方案。 库提供了三种核心方法:会话


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。