前端技术文章
-
SCSS更适合大型前端项目,因其变量作用域可控、@mixin逻辑可封装、编译期行为可预测;变量需显式@use导入防冲突,@mixin支持参数/条件/返回值,嵌套中&精确控制输出,三者共同保障样式长期可维护。480 收藏 -
JavaScript通过事件循环实现异步处理,先执行同步代码,再优先清空微任务队列,然后执行宏任务,形成“宏任务→所有微任务→下一宏任务”的循环机制。480 收藏 -
HTML无法自动命名PDF,浏览器打印时文件名由<title>决定但不可控;JS截图方案(html2canvas+jsPDF)可自定义名称但质量差;服务端生成才是可靠方案,支持真自动命名与语义化PDF。480 收藏 -
border-radius对浮动图片完全生效,但需注意父容器overflow设置、图片显式宽高及object-fit行为,否则易因裁剪或渲染时机导致圆角“失效”。480 收藏 -
文章 · 前端 | 1星期前 | 前端 · javascript · 缓存治理 · localStorage · Web性能 · 前端 本地缓存 localStorage 过期时间 版本迁移 异常兜底
本文用搜索筛选条件缓存场景,演示 localStorage 如何封装过期时间、版本号、迁移逻辑和异常兜底,避免旧缓存影响页面状态。480 收藏 -
调用setCustomValidity('错误信息')后必须配合reportValidity()或表单submit才触发原生红色气泡提示;传空字符串可清除错误;需结合:invalid:user-invalid控制样式,且确保用户已交互。479 收藏 -
用object-fit:cover可强制图片等比缩放并填满容器,多余部分裁剪;需配合明确宽高和overflow:hidden,IE不支持。479 收藏 -
使用HTML5的video标签可实现网页视频播放,支持controls控制、多格式兼容(MP4/WebM/Ogg)、autoplay静音自动播放、loop循环及JavaScript动态控制播放状态,推荐preload="metadata"优化加载,避免移动端自动播放大文件以提升体验。479 收藏 -
@import不会直接拖慢首屏但默认阻塞串行加载,实际性能更差;PostCSS+postcss-import是最稳妥的静态切分方式;真按需加载需JS动态导入+样式注入;CSSModules仅解决作用域而非物理分离。479 收藏 -
使用线性渐变结合background-position动画实现颜色流动;2.通过伪元素叠加与opacity过渡模拟渐变色变化;3.利用transform旋转或缩放伪元素创造动态遮罩效果。479 收藏 -
应使用linear-gradient:金属质感需高光、过渡带、暗部三段式明暗变化,linear-gradient可精准控制方向与色标分布,模拟拉丝或冷轧效果;conic-gradient仅适用于旋转对称部件如螺丝头。479 收藏 -
HTML的time元素不解析毫秒级时间戳,datetime属性仅接受ISO8601格式(如"2024-05-30T00:00:00Z"),需用newDate(timestamp).toISOString()手动转换,否则语义失效、辅助技术无法识别。479 收藏 -
应使用<metaname="viewport"content="width=device-width,initial-scale=1.0">控制初始渲染,避免强制锁死缩放;禁用user-scalable=no和maximum-scale以保障可访问性;优先采用rem、clamp()等响应式字体方案替代zoom或transform:scale()。479 收藏 -
URLAPI是浏览器和Node.js(v10.0.0+)原生支持的标准URL解析工具,需传入绝对URL或配合base参数使用;其属性只读,query操作应通过URLSearchParams,修改路径或协议须新建实例,并注意对不可信输入做try/catch和协议校验。479 收藏 -
基础文本框应写为<inputtype="text"name="xxx"id="xxx">并配<labelfor="xxx">;value属性设初始值,.value读写运行时值;无name不提交,disabled不提交而readonly可提交。479 收藏