机器人变声效果 - Web Audio 录制添加特效
录制一段音频,实时添加机器人、外星人、回声等音效并下载,不依赖服务器。
UD5工具箱
分析字体加载对页面性能的影响,获取针对性的优化建议,提升用户体验与 Core Web Vitals 评分
font-display 是 CSS @font-face 规则中的一个属性,用于控制字体加载过程中的显示行为。它决定了在自定义字体完全加载之前,浏览器如何处理文本的渲染。
在字体加载期间,浏览器面临两个选择:FOIT(Flash of Invisible Text,文本不可见)或 FOUT(Flash of Unstyled Text,显示回退字体)。font-display 让你明确控制这一行为。
对性能的影响:错误的设置(如默认的 auto)可能导致文本长时间不可见,严重影响 LCP(Largest Contentful Paint) 和用户体验。使用 swap 可确保文本立即可见,避免布局偏移。
WOFF2(Web Open Font Format 2)是目前Web字体的最佳选择:
@font-face 中将WOFF2放在 src 列表的最前面,浏览器会优先使用它。preconnect:提前建立与字体服务器的连接(DNS + TCP + TLS),适用于Google Fonts等CDN字体。减少连接建立延迟约100-300ms。
preload:强制浏览器优先下载特定资源。适用于关键字体(如标题字体),确保它们在渲染需要时已经可用。
两者的最佳实践:
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link rel="preload" href="/fonts/main.woff2" as="font" type="font/woff2" crossorigin>字体子集化是从字体文件中提取仅包含所需字符的子集,大幅减少文件大小。对于中文、日文等大字符集字体尤为重要。
中文字体完整文件通常5-15MB,子集化后(常用3000-7000字)可降至150-500KB(WOFF2格式)。
推荐工具和方法:
text= 参数请求特定字符子集。当自定义字体加载完成后替换回退字体时,如果两种字体的度量指标(metrics)不同,文本的尺寸会发生变化,导致页面布局移动,产生CLS。
降低CLS的字体策略:
font-display: swap 配合精心选择的回退字体,使回退字体与自定义字体的度量尽可能接近。size-adjust CSS属性(现代浏览器支持)调整回退字体的尺寸以匹配自定义字体。ascent-override、descent-override)减少布局偏移。可变字体将多个字重、宽度、斜体等变体合并到一个文件中,通过CSS参数动态调整字体外观。
性能优势:
Google Fonts支持可变字体,在URL中添加 wdth,wght@75..100,400..700 等参数即可使用。
两者各有优势,取决于具体场景:
Google Fonts CDN 优势:
自托管优势:
建议:对性能要求极高的网站,自托管关键字体 + preload是最佳选择。一般网站使用Google Fonts + preconnect即可获得良好性能。
好的字体回退方案能减少CLS并改善加载体验:
-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, ...示例回退方案:如果使用 Montserrat,可用 Arial, Helvetica, sans-serif 作为回退,它们的几何特征较为接近。
录制一段音频,实时添加机器人、外星人、回声等音效并下载,不依赖服务器。
输入颜色十六进制值,根据色相和明度给出类似`--color-primary-500`的命名建议。
输入网站robots.txt内容与用户代理,测试指定URL是否被允许抓取,SEO优化辅助。
粘贴 JSON-LD 代码,校验语法并提示常见类型的必填属性缺失,辅助 SEO 调试。
演示如何动态更新 datalist 选项以实现搜索建议,并处理键盘选择。
粘贴原始Webhook请求体,自动识别并格式化,便于阅读调试。
生成可平铺的细微颗粒、皱纸或帆布质感SVG滤镜,用于网页高级感。
设置容器宽度阈值,改变容器大小观察组件内部样式的变化,学习容器查询用法。
并排显示两段文本差异,字符级高亮且支持三路合并视图,解决冲突更直观。
记录用户在页面上的最大滚动深度(25%、50%、75%、100%),并生成可视化热图。
输入网址或文本,将单词首部字母人工加粗,引导视线快速移动,提升阅读速度。
输入可能的攻击向量,选择不同的转义或过滤策略,实时查看是否被安全处理,教育安全开发。
支持多语言字符分割,准确统计汉字、英文单词、日文假名数量,并评估社交媒体发文长度。
将英文文本转换为单词前几个字母加粗的格式,引导视线跳跃式阅读,模拟Bionic Reading效果。
输入对照组和实验组的用户数与转化数,计算 Z 值、P 值,判断是否具有统计显著性。
配置WebSocket地址,模拟多个并发连接,发送自定义消息并记录响应延迟。
调节两列波的频率、波长和位置,实时观看水面波干涉形成的明暗条纹图案。
输入WebSocket服务地址,建立连接,发送和接收消息,方便调试实时通信应用。
在两个不同形状的SVG路径间自动生成流畅的过渡变形动画SMIL代码。
连接到 WebSocket 端点,自定义消息内容(JSON、文本、ArrayBuffer)并发送,查看响应。
粘贴JSON示例数据,自动分析并生成对应的JSON Schema,支持类型推断和必填标记。
拖拽改变一个div的大小,通过ResizeObserver API实时显示其新的宽度和高度。
粘贴代码片段,基于关键字和语法模式自动推断编程语言,适合未命名文件的快速识别。
粘贴代码,计算总行数、有效代码行数、注释行数和空行数。
添加多个色块拖拽顺序,直观表现层叠上下文与z-index值。
输入词汇和权重,生成美观的文字云图片,可自定义配色和螺旋布局。
输入源页和引用页URL,构造Webmention请求通知被引用页面,演示独立博客协议。
在Canvas上绘制理想频率响应,并应用简单FIR滤波器对合成信号进行滤波,听音效对比。
配置监听目标,实时显示DOM节点的增删改及属性变化,辅助AJAX内容调试。
粘贴一段文本,涂黑不用单词,保留部分文字组成一首再生诗词。