前端技术文章
-
code标签仅提供语义标识,不保留格式;多行代码必须嵌套在pre中,二者分工明确:pre保留空白符,code声明代码语义,且HTML字符需转义。474 收藏 -
float是实现文字环绕图片最轻量、兼容性最好的原生方案,需为图片显式设置width(或max-width)和float,文字必须紧跟其后且处于同一BFC中,同时注意父容器坍缩问题。474 收藏 -
JavaScript并发控制通过Promise+队列+计数器实现,用固定槽位限制同时执行任务数(如3个),新任务入队等待空闲,running计数器跟踪运行中任务,完成即释放槽位并调度下一个。474 收藏 -
DOM是浏览器将HTML转换成的JS可操作对象树,以document为根节点,包含元素、文本等节点;应优先用querySelector、classList、textContent等现代API安全高效操作。474 收藏 -
JavaScript中Array.prototype.sort()实现多属性排序需在单个比较函数中按优先级逐级比较:先比部门升序(localeCompare),再比年龄降序(b-a),最后比姓名升序(localeCompare),避免多次sort调用覆盖结果。474 收藏 -
bottom:0只对position为absolute、fixed或sticky的元素生效,且依赖最近已定位祖先(如position:relative)作为参考系;若无,则锚定视口底部。474 收藏 -
Flex适用于一维布局(单行/列对齐、分布、顺序调整),Grid专用于二维网格(行列同时控制);二者分工明确,常嵌套使用——Grid作外层区域划分,Flex处理内部细节对齐。474 收藏 -
grid-column-gap控制列间水平间距,row-gap控制行间垂直间距;前者作用于列轴,后者作用于行轴,两者均推荐用column-gap和row-gap替代以提升跨布局通用性。474 收藏 -
Nginx能做WebSocket负载均衡,但必须配置proxy_http_version1.1、Upgrade/Connection头透传、proxy_read_timeout与proxy_send_timeout延长至86400、禁用缓冲,并依后端状态选择ip_hash或least_conn算法。474 收藏 -
文字环绕浮动图片需用float:left/right,图片须为普通流内元素并设width和margin;后续块级元素可能清除浮动导致环绕失效,关键在父容器与兄弟元素的样式交互。474 收藏 -
z-index在3D场景中失效是正常现象,因浏览器按Z轴实际坐标(如translateZ值)而非z-index数值决定渲染顺序;需通过调整transform中的Z值精确控制前后关系。474 收藏 -
跨域请求因浏览器同源策略被阻止,是安全机制而非bug;解决方式主要有CORS(服务端配置响应头)、JSONP(仅GET,已淘汰)和代理服务器(开发常用),推荐优先配置CORS。474 收藏 -
nonce是CSP中授权内联脚本执行的一次性随机字符串,需服务端同步生成并严格匹配响应头script-src'nonce-xxx'与标签nonce="xxx"属性,否则静默失效。474 收藏 -
用min-height:100vh撑满视口最可靠,避免height:100vh截断内容;推荐设在主容器而非html/body;配合Flex布局(父容器flex-column+min-height:100vh,主内容flex:1)可实现页脚粘底;iOSSafari需注意vh兼容性,可用JS动态适配或回退height:100%。474 收藏 -
animation-play-state是唯一能真正暂停并从断点继续的原生方案,仅适用于纯CSS@keyframes动画;Canvas、Three.js和requestAnimationFrame动画需手动管理时间戳与状态,否则暂停后会重头开始或跳变。474 收藏