-
直接用::before和::after写tooltip易错位,因top/left等定位值未与方向解耦,硬编码导致改方向需手动调所有偏移;正确做法是用Lessmixin封装方向参数,通过条件分支控制transform、margin及border组合,并确保父容器设position:relative。
-
本文介绍在使用RxJS的combineLatest时,如何通过distinctUntilChanged过滤掉与上一次完全相同的数组发射值,实现“仅当任一源值变化时才触发订阅”,避免冗余处理。
-
答案:通过设置初始边框和transition属性可实现border-width平滑过渡,避免使用border:none导致动画失效。
-
JavaScript通过Reflect和Proxy实现反射与元编程,允许运行时动态操作对象结构。Reflect提供标准化方法如get、set、has等,与Proxy陷阱对应,确保操作一致性;Proxy则通过拦截对象操作实现日志、校验、响应式等高级功能,广泛应用于Vue3、ORM库等场景,但需避免滥用以保障性能与可读性。
-
JavaScript中函数是一等公民,可赋值、传参、返回和参与表达式,支撑回调、事件驱动与函数式编程等核心范式。
-
图片加载慢的根源是WebView未预加载资源且缓存配置不当。应使用linkrel="preload"提前加载首屏图片,启用WebView磁盘缓存并设置正确HTTP缓存头,首屏图片设loading="eager"避免懒加载干扰,且需在真机HTTPS环境验证。
-
异步加载JS文件的核心方法有:1.使用async属性,实现脚本的异步下载和立即执行,不阻塞HTML解析,但不保证执行顺序;2.使用defer属性,异步下载脚本并在HTML解析完成后、DOMContentLoaded事件前按顺序执行,适合依赖DOM或有依赖关系的脚本;3.动态创建script元素,通过JavaScript控制加载时机,适用于按需加载、第三方集成等场景,并需处理onload和onerror事件;4.使用ESModules的动态导入(import()),返回Promise,实现模块的按需异步加载
-
使用相对单位如百分比、vw、vh结合Flexbox、Grid及媒体查询,可解决因固定单位导致的多分辨率元素偏移问题,实现自适应布局。
-
答案:实现网页视频直播需结合HTML5Video与MSE支持HLS/DASH流播放,通过OBS推流至Nginx-rtmp或SRS服务器,经CDN分发;低延迟场景采用WebRTC配合Mediasoup等SFU服务,前端用hls.js或WebRTCAPI集成,后端保障HTTPS、防盗链与自适应码率,确保跨设备兼容与稳定传输。
-
text-overflow:ellipsis仅支持单行省略;多行需用-webkit-line-clamp(需display:-webkit-box等配合)、::after伪元素遮罩或JavaScript精确截断,各有兼容性与精度权衡。
-
HTML规范禁止在<video>标签内直接嵌套<div>等非媒体子元素,导致.img-caption无法正确渲染或响应CSS定位;修复需将图层移至<video>外部并添加pointer-events:none防止遮挡交互。
-
CSSanimation不支持自动串联关键帧,多段动画需通过多个独立animation声明配合animation-delay错峰触发,并设fill-mode为forwards以保持状态。
-
transition对display:none无效,因display是离散属性无法插值;应改用visibility+opacity组合实现淡入淡出,并注意z-index、position、pointer-events及transitionend过滤等实战要点。
-
:empty真正匹配完全不含任何子节点(含文本、元素、注释)的元素,哪怕一个空格或换行符都不行;它只基于DOM结构,不看视觉效果。
-
表单响应式需统一设width:100%和box-sizing:border-box;小屏下label与input须用flex-direction:column堆叠;焦点时调用scrollIntoView({block:'nearest'})防键盘遮挡;原生控件如date/number需设font-size≥16px及min-height:44px。