Data URL解析查看器 - 预览/下载/解构
粘贴以data:开头的链接,自动判断MIME类型并预览内容,或提供下载按钮。
UD5工具箱
实时配置、预览并生成 HTML5 <datalist> 代码
value 或 value|label
value,下拉显示与填入值一致。尝试输入部分文字,浏览器会自动过滤匹配的选项。
<input type="text" list="my-list" placeholder="请输入..."> <datalist id="my-list"> <option value="苹果"> <option value="香蕉"> <option value="橙子"> </datalist>
<datalist> 是 HTML5 引入的原生自动建议组件。它通过 id 与 <input> 的 list 属性关联,为输入框提供一组预定义的选项建议。用户在输入时会看到过滤后的下拉列表,但仍然可以输入列表之外的值——这是它与 <select> 最本质的区别。
典型场景:搜索建议、邮箱后缀补全、国家代码选择、标签输入等需要引导用户但又允许自由输入的场景。
| 特性 | <datalist> | <select> |
|---|---|---|
| 自由输入 | ✅ 允许 | ❌ 仅限于选项 |
| 搜索过滤 | ✅ 原生支持 | ❌ 需额外实现 |
| 移动端体验 | ⚠️ 不一致 | ✅ 原生控件 |
| 样式自定义 | ❌ 几乎不可 | ⚠️ 部分可定制 |
| 多选 | ❌ 不支持 | ✅ multiple属性 |
建议:需要严格限制选项时用 <select>;需要建议+自由输入时用 <datalist>。
使用 <option> 的 value 和 label 两个属性:
<option value="CN" label="中国">
下拉列表显示 "中国"(label),但用户选中后输入框填入的是 "CN"(value)。这在需要显示全称但提交代码的场景中非常实用(如国家代码、产品编号等)。
💡 在本工具的预览中,您可以切换"国家代码"预设来直观体验这一行为。
桌面端:Chrome、Firefox、Edge、Safari 均完全支持,体验一致(下拉列表 + 过滤)。
移动端:
<select>。可以!只需将多个 <input> 的 list 属性指向同一个 <datalist> 的 id 即可:
<input list="shared-list" placeholder="输入框1"> <input list="shared-list" placeholder="输入框2"> <datalist id="shared-list"> <option value="选项A"> <option value="选项B"> </datalist>
这在表单中有多个相关字段需要相同建议列表时非常高效,减少了代码冗余。
直接操作 <datalist> 的 DOM 即可,浏览器会自动反映变化:
const datalist = document.getElementById('my-list');
datalist.innerHTML = ''; // 清空
const newOptions = ['选项1', '选项2', '选项3'];
newOptions.forEach(val => {
const opt = document.createElement('option');
opt.value = val;
datalist.appendChild(opt);
});
这在需要根据用户输入动态获取远程建议(如搜索提示)时非常有用。结合 fetch API 即可实现异步建议加载。
autocomplete 控制浏览器的历史输入记忆,而 <datalist> 提供开发者定义的建议列表。两者可以共存:
autocomplete="on"(默认):浏览器可能同时显示历史输入值和 datalist 选项。autocomplete="off":关闭浏览器历史记忆,仅显示 datalist 的选项(推荐在自定义建议场景中使用)。本工具的预览区默认设置 autocomplete="off",确保您只看到 datalist 的效果。
常见原因及排查方法:
<input list="xxx"> 与 <datalist id="xxx"> 完全一致(区分大小写)。hidden、checkbox)不支持。💡 使用本工具预览即可快速排查配置问题。
粘贴以data:开头的链接,自动判断MIME类型并预览内容,或提供下载按钮。
通过PerformanceObserver获取首次绘制(FP)和首次内容绘制(FCP)时间。
通过滑块调节LCP、FID、CLS等指标值,实时显示对应的谷歌核心网页指标评分与颜色。
支持多层递归解码及批量URL编码操作,自动识别已编码字符,适合复杂参数解析与网络调试。
模拟 prefers-contrast: more/less 媒体特性,预览页面在高对比度模式下的视觉效果。
分解URL为协议、主机、端口、路径、查询字符串和哈希等各个组成部分,便于理解与调试。
输入第三方域名,生成<link rel='preconnect'>或dns-prefetch等资源提示标签。
粘贴JWT,自动Base64解码并显示明文Header和Payload。
上传或粘贴 source map 文件,展示原始代码与编译后代码的对应关系,辅助调试。
粘贴 Prometheus 指标文本,解析为结构化表格,并支持基本过滤和排序。
拖动曲线手柄调整动画缓动,实时预览弹跳或淡入效果,生成cubic-bezier值。
输入URL提取OG标签,模拟Facebook/Twitter/LinkedIn卡片显示效果,优化链接分享。
加载测试页面,实时显示Largest Contentful Paint等核心指标,了解加载体验。
输入交易清单,逐步可视化FP树的构建与频繁项集挖掘过程,理解购物篮分析算法。
输入活动名称、日期、地点和票价,生成 Event 结构化数据,用于活动搜索结果。
随机生成整数数组,逐步展示按低位优先进行的基数排序过程,辅助算法理解。
选择不同的 list-style-type(disc, decimal, lower-roman 等)并实时查看列表样式渲染效果。
利用浏览器原生API录制屏幕共享或窗口,选择音频源,导出为WebM视频。
选择网站类型与收集数据项,生成基础隐私政策HTML文本,符合主流法规框架。
拖放小图片或文本文件,转换为可嵌入HTML/CSS的Data URI,设置MIME类型。
显示当前网页的Referrer-Policy设置,并模拟不同策略下的Referer发送情况。
设置资源计时缓冲区大小,监听 resourcetimingbufferfull 事件并处理。
输入进程列表,同时对比先来先服务、短作业优先和轮转调度算法的甘特图和平均等待时间。
计算Whirlpool算法哈希值,输出512位高强度摘要,用于数据完整性校验和密码学实践。
上传CSV文件,指定优先排序列和升降序,干净地整理杂乱数据。
演示yEnc编码如何将8位二进制转换为适合新闻组的7位文本,并提供解码还原。
拖拽构建阶段与任务,配置触发条件,生成对应的GitLab CI或GitHub Actions YAML代码。
输入Proto定义和Base64编码的protobuf数据,在线解码为JSON,辅助分析二进制通信内容。
粘贴HTML和CSS,工具将尝试分析并为你抽取首屏内联样式,辅助性能优化。
提取当前页面Performance API的navigation、resource与paint数据,可视化展示加载各阶段时长。