前端技术文章
-
Svelte组件默认样式局部化是通过编译时为CSS添加唯一属性选择器(如svelte-123abc)实现,而非ShadowDOM;:global()仅放行括号内选择器,需避免嵌套与误用,全局样式应统一管理于app.css而非组件内style块。169 收藏 -
HTML模板更新后页面仍显示旧内容,根本原因是多层缓存未彻底清理:ServiceWorker、CacheStorage、CDN及HTTP强缓存均可能拦截请求;仅Ctrl+F5无效,须按浏览器级→站点级→服务端级顺序清除,并配合URL版本化或构建哈希确保资源更新。351 收藏 -
ESLint与Prettier分工协作:ESLint检查逻辑错误,Prettier专注格式化;必须安装eslint-config-prettier以禁用ESLint中与其冲突的格式规则,且需置于extends末尾,否则会导致fix结果不可预测。260 收藏 -
影响LCP的CSS规则包括:阻塞渲染的未内联/大体积CSS、@import串行加载、display:none元素的冗余样式解析;需内联关键样式、避免font-display非swap值、用width/height+aspect-ratio占位防抖动、慎用transform/vw等运行时计算属性。243 收藏 -
Edge新版(Chromium内核90+)彻底移除Flash,因微软2021年1月停用且Chromium88+禁用NPAPI,设置页404、插件列表无项、注册表废弃;网站需升级HTML5或临时用IE模式。240 收藏 -
MessageChannel不能直接用于两个独立iframe间通信,因其端口需显式传递且iframe无天然引用关系;同源下应由父页面创建并分发端口实现高频低延迟点对点通信。418 收藏 -
lang属性必须精准标注各语言片段,根标签设置不能替代局部声明;需严格遵循BCP47标准,错误值导致语音、翻译、字体、CSS等多方面失效。433 收藏 -
FID必须用PerformanceObserver异步监听,因其唯一暴露浏览器调度层首次输入延迟;TTI则需结合主线程空闲观察与交互验证,异步逻辑易破坏连续5秒无长任务条件。470 收藏 -
BEM通过命名约束避免样式冲突和维护灾难:Block(如card)为独立单元,Element(如card__title)须依附Block,Modifier(如card--featured)表状态且不单独使用。206 收藏 -
模块模式通过闭包实现子应用JS作用域隔离,需配合沙箱、DOM/CSS隔离及规范卸载机制才能有效防止微前端全局污染。475 收藏 -
HTML5中插入版权符号©等特殊字符有四种方法:一、用HTML实体编码(如©);二、直接键盘输入Unicode字符(需声明UTF-8);三、用JavaScript动态插入;四、用CSS的content属性注入(仅装饰性用途)。387 收藏 -
最常用的是<div>、<p>、<h1>–<h6>、<img>和,覆盖80%以上页面需求;<div>因无默认样式、高嵌套性与布局兼容性成最安全容器,但不可替代语义标签。134 收藏 -
PerformanceAPI可精准采集FP、FCP、LCP、FID、TTFB等核心性能指标,通过performance.timing、getEntries()及PerformanceObserver获取页面加载与交互数据,结合mark打点和measure测量自定义逻辑耗时,利用sendBeacon上报关键数据,实现轻量高效的前端性能监控。486 收藏 -
findLast是ES2023新增的数组方法,从后往前遍历并返回首个满足条件的元素;Chrome108+、Firefox107+、Safari16.4+及Node.js18.12+支持,旧版本需polyfill。283 收藏 -
HTML页面异常恢复需提前设计降级路径:白屏先查协议与报错;JS卡死用分片、防抖、WebWorker;资源加载失败加onerrorfallback;表单提交失败用localStorage缓存输入。126 收藏