-
track标签通过为视频/音频提供字幕、描述等文本轨道提升可访问性;2.它依赖WebVTT格式文件定义时间戳和内容;3.实际使用需注意CORS跨域问题、动态切换逻辑及浏览器样式兼容性,其核心价值在于实现包容性设计并拓展互动式体验。
-
使用position:fixed可让元素相对于视口固定,常用于导航栏、返回顶部按钮等;通过top、bottom、left、right定位,需注意脱离文档流、层级覆盖及移动端兼容性问题。
-
用canvas绘制文字水印最可靠,需图片onload后drawImage,设置textBaseline和textAlign居中对齐,globalAlpha控透明度,toDataURL导出时注意跨域、MIME类型及质量参数,斜向平铺需save/restore+translate+rotate,前端水印仅防误用,防窃取须服务端生成。
-
HTML5文档默认使用http://www.w3.org/1999/xhtml命名空间,无需手动声明xmlns;仅XHTML(application/xhtml+xml)场景下xmlns才必需且生效,HTML模式下其值恒为null。
-
Buffer是Node.js中用于高效操作二进制数据的核心类,适用于TCP流、文件I/O和网络请求。它在V8堆外分配固定大小的内存块,以8位字节存储数据,支持通过索引访问,每个字节范围为0到255。创建方式包括Buffer.from()、Buffer.alloc()和Buffer.allocUnsafe(),例如Buffer.from('hello')将字符串按UTF-8编码为字节序列。Buffer常与Stream配合使用,处理大数据时分块读取,可读流通过'data'事件emitBuffer数据块,便于累
-
JavaScriptDOM操作核心是先选中元素再增删改查,推荐使用getElementById、querySelector、querySelectorAll等高效选择器,并通过缓存元素、使用classList、DocumentFragment和事件委托提升性能与安全性。
-
正确加载HTML需匹配环境:本地双击用file://协议;Python内置服务器解决跨域;VSCodeLiveServer支持热重载;远程部署需Web服务器;Node.js服务适合定制化需求。
-
正确配置transition、选择合适缓动函数、减少布局重排可提升文字大小动画流畅度。1.明确设置transition:font-size而非all;2.使用ease-in-out或cubic-bezier优化动效;3.用固定容器、transform:scale或will-change避免性能问题;4.多元素同步时改用rem配合根字体变化。
-
CSS选择器权重按ID位、类位、标签位三级“位值”模型逐位比较,非十进制加法;ID位相同则比类位,类位高者胜,与标签数量无关;:not()、属性选择器等隐含类位,内联样式为(1,0,0,0);!important不改变权重,仅提升应用优先级。
-
absolute定位会脱离文档流,relative不脱离;fixed相对于视口固定,sticky在临界点前相对文档流、后转为固定;脱离流元素仍可交互但需注意遮挡与可访问性问题。
-
备忘录模式通过发起人、备忘录和负责人三者协作,实现对象状态的保存与恢复;发起人创建并恢复状态,备忘录存储状态且对外透明,负责人管理备忘录而不访问其内容,从而在不破坏封装性的前提下支持撤销、重做、游戏存档等场景。
-
按钮用百分比宽度在小屏上溢出,是因为width:100%基于未约束的父容器计算,且未考虑box-sizing、padding、border等盒模型增量;需配合box-sizing:border-box、父容器max-width:100%及合理min-width/max-width使用。
-
原生title属性可实现基础工具提示,但样式和体验受限;通过data-title结合CSS可自定义外观与动画,支持动态内容展示;引入JavaScript能实现延迟显示、精准定位及异步加载等高级功能,提升交互体验。
-
useMemo的核心思想是通过缓存计算结果并在依赖项未变化时直接返回缓存值来避免重复计算,其关键在于依赖项数组的正确使用,它决定了何时重新执行计算;该机制解决了因不必要的重复计算和引用变化导致的性能瓶颈问题;useMemo用于缓存值,而useCallback用于缓存函数引用,两者共同优化React组件的渲染性能。
-
真正可行的方案是用offset-path+offset-distance,CSS原生支持沿贝塞尔曲线、圆弧等任意路径移动,配合offset-rotate:auto可自动朝向路径切线,兼容Chrome79+、Edge79+、Safari15.4+。