<div class="carousel" tabindex="0"> <div class="carousel-track"> <div class="slide">Slide 1</div> <div class="slide">Slide 2</div> <div class="slide">Slide 3</div> <div class="slide">Slide 4</div> </div> </div> .carousel { overflow-x: auto; scroll-snap-type: x mandatory; display: flex; scrollbar-gutter: stable; scroll-padding-inline: 1rem; block-size: 250px; border: 1px solid #ccc; position: relative; padding-block: 1rem; accent-color: #007aff; /* 控制滚动按钮和标记颜色 */ } .carousel-track { display: flex; gap: 1rem; inline-size: max-content; } .slide { inline-size: 300px; flex: none; scroll-snap-align: start; background: #f5f5f5; border-radius: 1rem; padding: 2rem; font-size: 1.5rem; display: flex; align-items: center; justify-content: center; box-shadow: 04px12pxrgba(0, 0, 0, 0.1); } /* 样式化分页标记 */ .carousel::scroll-marker { block-size: 6px; inline-size: 24px; background: #ccc; border-radius: 3px; margin-inline: 4px; } .carousel::scroll-marker(active) { background: #007aff; } /* 堆代码 duidaima.com */ /* 样式化左右滚动按钮 */ .carousel::scroll-button(start) { background: #fff; color: #007aff; border: 1px solid #007aff; border-radius: 50%; padding: 0.5rem; } .carousel::scroll-button(end) { background: #fff; color: #007aff; border: 1px solid #007aff; border-radius: 50%; padding: 0.5rem; }声明式弹出窗口:Interest Invoker API
<!-- Interest 区域:当鼠标悬停或聚焦时,触发目标显示 --> <button interest="details">查看详情</button> <!-- 被触发的目标:一个可弹出的悬浮卡片 --> <div popover id="details"> 堆代码:duidaima.com </div>内置 AI API:引入 Gemini Nano 和多模态 Prompt API
Google 在 Chrome 中引入了 端侧(on-device)AI 能力,通过一组内置 API 提供给 Web 开发者。这些 API 使用 Gemini Nano —— Google 的轻量版生成式 AI 模型,运行在本地设备上,不依赖云端服务器。
备注:Gemini Nano 是 Google Gemini 模型的轻量版本,优化运行在手机和浏览器端,具备较强的文本和图像处理能力,适合离线使用。
const summary = await summarize("这是一段很长的文本..."); console.log(summary);• Language Detector API(语言检测 API):自动识别输入文本的语言。
const lang = await detectLanguage("Bonjour tout le monde"); console.log(lang); // 输出 "fr"• Translator API(翻译 API):本地将文本翻译为目标语言。
const translated = await translate("你好", "en"); console.log(translated); // 输出 "Hello"• **Prompt API(多模态):**调用 Gemini Nano 对文本、图像等多种输入进行理解、生成或问答。
const result = await promptAI({ input: { text: "总结这张图的内容", image: imageBlob }, context: "用户想快速理解图表信息" }); console.log(result);• Writer API:允许开发者向模型提供提示(prompt),由 Gemini Nano 在本地生成新的文本内容。
const output = await writer.generate({ prompt: "写一段介绍人工智能的简短段落", context: "科普文章风格" }); console.log(output.text);• Rewriter API:用于对现有文本进行重写、润色、语气调整或简化,也是运行在本地的 Gemini Nano 能力。
const rewritten = await rewriter.rewrite({ input: "本系统旨在优化资源调度与任务分配", tone: "更口语化" }); console.log(rewritten.text); // 输出:我们这个系统主要是为了更好地分配任务和资源。混合式 AI 解决方案
• 如果不支持,就自动用云端 AI —— 保证效果一致
• 编译工具:使用 browserslist-config-baseline,可以将 Baseline 目标集成到诸如 Babel 和 PostCSS 的代码编译工具中。这样可以在源码中使用现代特性,并在生产构建中将其编译为向后兼容的代码。
https://webstatus.dev/这意味着,开发者可以:
• 开发者集成简单:开发者只需调用新的 Credential Manager API,而无需分别处理不同类型的登录方式。