前端技术文章
-
触发BFC才是解决右侧内容被遮挡的根本方法,因其让容器感知浮动并重新布局;margin-left仅适用于固定宽度的简单场景,且无法解决父容器塌陷等问题。479 收藏 -
移动端图标颜色不随文字变化,主因是SVG引入方式错误、内联fill属性覆盖、父容器未显式设置color或伪元素限制;正确做法是用内联SVG并清除所有硬编码颜色,配合fill:currentColor级联控制。250 收藏 -
<p>HTML注释必须用<!---->包裹,不可嵌套、不可在标签内或DOCTYPE前,JS/CSS中无效,服务端模板需注意剥离风险,调试时可能影响布局。</p>142 收藏 -
Vue3响应式系统基于Proxy实现,通过track收集依赖、trigger精准触发更新,依赖在副作用执行时隐式注册,仅更新关联组件,避免冗余渲染。237 收藏 -
必须用position:fixed,因其天然锚定视口、不随滚动偏移;absolute会随父容器滚动消失,sticky无法线性映射滚动比例,且fixed兼容所有现代浏览器。217 收藏 -
用Map存储函数引用是轻量级元编程,关键在于安全存储、快速查找和稳定扩展;需依场景选容器,统一接口封装函数,并分离注册与执行流程。498 收藏 -
BroadcastChannel与MessagePort不能直接配合使用,因前者依赖结构化克隆算法,而后者不可克隆;正确做法是用BroadcastChannel广播通知,再通过MessagePort或SharedWorker建立专属数据通道。316 收藏 -
本文介绍一种比串联多个正则表达式更可靠、更可维护的方式——使用DOMParser解析HTML字符串并提取innerText,彻底避免正则处理标签带来的边界问题与安全隐患。123 收藏 -
JavaScript中处理Unicode需区分字符、码元、码点;ES6前按UTF-16码元操作易出错,ES6起支持基于码点的length计算(如扩展运算符)、遍历(for...of)和正则(/u标志、\p{Emoji})。223 收藏 -
可替换元素是浏览器不完全依赖HTML内容、而由外部资源或内置UI控件决定其尺寸与外观的元素。如<img>渲染图片、<video>启用播放器、<inputtype="checkbox">绘制复选框,其行为绕过标准CSS盒模型。131 收藏 -
必须先转义HTML字符再用<code>包裹才能正确显示源代码;<var>和<samp>仅表语义,不自动转义,误用会导致解析错误或无障碍问题。297 收藏 -
Promise.withResolvers仅用于单次终态触发场景,解决Promise创建后外部安全调用resolve/reject的问题,不支持多阶段状态流转、重入或取消重试等复杂状态机需求。152 收藏 -
preconnect必须写在<head>中且仅支持完整协议+域名,不支持路径或省略协议;需为跨域字体等CORS资源添加crossorigin属性,建议控制在3–6个关键域名以内。340 收藏 -
HTML5本身不提供地图或测距功能,实际是通过HTML5页面加载第三方地图SDK(如高德、Leaflet等),调用其API实现测距;必须基于经纬度使用球面公式或SDK地理计算函数,禁用像素距离估算。342 收藏 -
在Vue3中,当组件接收的props可能是原始对象或JSON字符串时,可通过toRefs+computed封装通用工具函数,在不污染响应式、不修改原始props的前提下,自动解析字符串为对象,实现类型统一与逻辑解耦。188 收藏