新的 Popover API:无需 JavaScript 即可轻松实现 Popover
Popover API 简化了 popover 的创建,消除了对 JavaScript 库或手动编码的需要。 跨主要浏览器支持,非常容易实现。
了解 Popover API
这个新标准简化了显示弹出窗口、自动处理打开、关闭和可访问性注意事项的过程。 开发者不再需要独立管理这些状态。
创建弹出窗口
基本实现
以下是创建基本弹出窗口的方法:
- 在 HTML 中创建一个按钮来触发弹出窗口。
- 在按钮上使用
popover-target
属性,通过共享 ID(例如popover
)将其链接到元素。 - 使用相同的 ID 将
popover
属性应用于要用作弹出窗口的 HTML 元素。
仅此而已!单击该按钮将打开弹出窗口,当您单击外部(轻关闭)时,它会自动关闭。此切换功能是默认行为。
添加关闭按钮
您可以在弹出窗口中添加关闭按钮。 为该按钮提供适当的 popover-target
属性并显式定义 hide
操作。 一点 CSS 会增强它的外观。
弹出模式
弹出窗口默认为“自动”模式:
- 打开弹出窗口会关闭所有其他打开的弹出窗口。
- 轻微消除已启用。
切换到“手动”模式可防止自动关闭其他弹出窗口并禁用灯光关闭。您需要显式管理弹出窗口的打开和关闭。
设计弹出框
使用背景元素
backdrop
元素特别有用;当弹出窗口打开时,它会覆盖页面的其余部分。
[popover] { background: white; border: 1px solid #ccc; border-radius: 8px; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); padding: 16px; max-width: 300px; } /* ... other CSS ... */
这样可以轻松设置背景样式,将注意力集中在弹出窗口上。
Popover 与 Modal
了解弹出窗口不是模态框是至关重要的:
- 弹出窗口不会禁用与页面其余部分的交互。
- 当弹出窗口打开时,您仍然可以单击其他元素。
对于需要用户交互才能继续操作的模式,请使用 dialog.showModal()
代替。 这将需要一些 JavaScript,但它提供了真正的模式功能。
增强 Popover 样式
使用对话元素
popover
属性本身是非语义的,允许您为弹出窗口使用 HTML <dialog></dialog>
元素。
添加更多内容并应用 CSS
添加更多内容(按钮等)和 CSS 样式(字体系列、填充、颜色等)进一步增强了弹出框的外观。 该示例展示了如何设置主按钮的样式以获得更美观的外观。
将 JavaScript 与 Popover 结合使用
虽然 API 无需 JavaScript 即可简化弹出窗口的创建,但您仍然可以使用 JavaScript 进行更高级的控制(例如 showPopover
)。
结论
Popover API 提供了一种简化的方法,可以用最少的代码创建优雅且易于访问的 popover。 欢迎您的反馈! 考虑喜欢或关注更多这样的内容。
关注我:LinkedIn | 中 | 蓝天
以上是Popover API:使用 HTML 创建本机弹出窗口 - 无需 JavaScript的详细内容。更多信息请关注PHP中文网其他相关文章!

是的,youshouldlearnbothflexboxandgrid.1)flexboxisidealforone-demensional,flexiblelayoutslikenavigationmenus.2)gridexcelstcelsintwo-dimensional,confffferDesignssignssuchasmagagazineLayouts.3)blosebothenHancesSunHanceSlineHancesLayOutflexibilitibilitibilitibilitibilityAnderibilitibilityAndresponScormentilial anderingStruction

重构自己的代码看起来是什么样的?约翰·瑞亚(John Rhea)挑选了他写的一个旧的CSS动画,并介绍了优化它的思维过程。

CSSanimationsarenotinherentlyhardbutrequirepracticeandunderstandingofCSSpropertiesandtimingfunctions.1)Startwithsimpleanimationslikescalingabuttononhoverusingkeyframes.2)Useeasingfunctionslikecubic-bezierfornaturaleffects,suchasabounceanimation.3)For

@keyframesispopularduetoitsversatoryand and powerincreatingsmoothcssanimations.keytricksinclude:1)definingsmoothtransitionsbetnestates,2)使用AnimatingmatematingmultationmatingMultationPropertiessimultane,3)使用使用4)使用BombingeNtibalibility,4)使用BombingingWithjavofofofofofoffo

CSSCOUNTERSAREDOMANAGEAUTOMANAMBERINGINWEBDESIGNS.1)他们可以使用forterablesofcontents,ListItems,and customnumbering.2)AdvancedsincludenestednumberingSystems.3)挑战挑战InclassINCludeBrowsEccerCerceribaliblesibility andperformiballibility andperformissises.4)创造性

使用滚动阴影,尤其是对于移动设备,是克里斯以前涵盖的一个微妙的UX。杰夫(Geoff)涵盖了一种使用动画限制属性的新方法。这是另一种方式。


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

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

记事本++7.3.1
好用且免费的代码编辑器

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

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

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境