-
justify-content:space-between对末行无效是因为它仅按每行子项总宽与容器宽计算等分空隙,末行子项少导致空隙右堆;伪元素占位需满足:父容器flex+wrap、content:""、flex:00同子项宽。
-
JavaScript实现原生视频播放器需隐藏默认控件,通过事件监听控制播放/暂停、进度拖拽、音量与全屏;核心是同步video元素状态与自定义UI,处理loadedmetadata、timeupdate、fullscreenchange等事件,并优化悬停显示、自动隐藏及移动端兼容性。
-
Chrome57以下不支持display:grid,仅Chrome57+稳定支持标准语法;旧版需用-webkit-grid前缀且功能受限;推荐渐进增强(flex基础+@supports覆盖)或服务端UA判断降级。
-
JIT去优化是保障语义正确的必要安全机制,而非性能退步征兆;其触发源于推测假设被打破,如类层次动态变更、逃逸分析失效、类型契约违反或方法重定义,高频核心算法因执行频次高且行为易变而尤为脆弱。
-
outline-offset负值在Chrome支持而Firefox忽略,Safari渲染不稳定;应统一用多层box-shadow替代,确保跨浏览器焦点样式一致,同时注意focus-visible适配和IE11降级处理。
-
Flexbox垂直居中只需父容器设display:flex并配合align-items:center,高度明确时最直接;若需兼容IE10–11,应使用Autoprefixer自动添加前缀。
-
fixed定位失效主因是父元素设置了transform、filter、opacity<1等属性,导致创建新包含块使fixed退化为absolute;需逐层检查computed值,移除或重置相关样式验证。
-
flex-grow无法直接平分宽度,因其分配的是剩余空间而非容器总宽;需设flex-basis:0(如flex:110)切断内容影响,并配合box-sizing:border-box、min-width:0及统一字体/内边距才能实现三列严格等宽。
-
pointer-events:none可解决上层DOM遮挡下层可交互元素的点击问题,如模态遮罩、图表图例、拖拽手柄等场景,使事件穿透至底层,同时保留视觉效果;但需注意继承性、子元素需显式设auto、移动端兼容性及渲染顺序影响。
-
语义配色需用业务类名(如.text-error)替代外观类名,结合CSS自定义属性和currentColor实现可维护性,同时适配高对比度模式与forced-colors媒体查询。
-
capture是布尔属性,需配合type="file"和精确accept值(如image/*)才能触发原生设备;iOSSafari要求input静态存在于DOM、用户手势直触且禁用桌面模式;Android行为不一,微信X5基本不支持;应以getUserMedia+MediaRecorder为可靠替代方案。
-
html5play函数不支持m3u8的根本原因是浏览器原生video标签大多不支持HLS协议,仅Safari默认支持;其本质是封装原生video元素,无内置解协议能力,直接赋值m3u8会失败。
-
Node.jsCluster模块通过主进程调用cluster.fork()创建多个worker进程,利用多核CPU提升并发性能;主进程(cluster.isMaster为true)仅负责fork、监听exit事件并重启worker,不启动HTTP服务,worker进程(cluster.isWorker为true)运行业务逻辑并共享同一端口,由内核通过SO_REUSEPORT实现负载均衡。
-
Less组件化需三原则:一用scope前缀隔离变量(如@card-bg-color);二限制嵌套≤3层并禁跨组件@import;三主题切换须预编译多套CSS而非运行时改变量。
-
modulepreload是<linkrel="modulepreload">用于预获取模块而不执行,区别于<scripttype="module">的立即解析执行;它需绝对路径、as="script",且服务端需配CORS,适用于明确依赖链或动态导入前的预加载。