-
答案:HTML通过input标签的type="file"实现文件上传功能,需配合form表单的enctype="multipart/form-data"和post方法提交,利用name属性标识字段,accept限制类型,multiple支持多选,required设置必填,并可通过JavaScript进行前端验证与用户体验优化。
-
radiogroup属性在任何主流浏览器中都不生效,它仅存在于早期HTML5草案中,用于已废弃的<command>标签,现代标准已移除;单选组唯一可靠机制是name属性,同名radio自动互斥。
-
flex容器需设flex-wrap:nowrap、明确宽度及overflow-x:auto才能横向滚动;white-space:nowrap仅作用于子项内文本,对flex布局无效。
-
:target伪类可选中URL锚点指向的元素并添加样式。当页面URL含#片段标识符时,ID与之匹配的元素被高亮,如h2:target设置背景色和边框,实现无需JavaScript的交互效果,常用于内容展开、选项卡切换和错误定位,需注意ID唯一性和浏览器兼容性,适用于静态页面增强用户体验。
-
HTML原生不支持下拉刷新,需用touch事件结合scrollTop判断顶部状态实现;pullDownAction中须控制加载态、安全更新数据源与DOM,并确保滚动上下文一致。
-
<p>text-align-last在Safari中完全不支持:所有版本均未实现,加-webkit-前缀也无效,浏览器静默忽略该属性;可用::after伪元素配合text-align:justify模拟末行对齐,但存在单行误换行、固定高度裁切、连字符干扰等限制。</p>
-
绝对定位元素设width:100%未撑满父容器,因其宽度参考最近已定位祖先(非static的父级),若无则参考视口;需父级设position:relative等才能使100%相对父容器计算。
-
ServiceWorker离线缓存必须分install、fetch、activate三阶段协同控制:install预缓存资源,fetch按destination分流响应,activate清理旧缓存并claim接管;任一环节缺失即导致白屏或加载失败。
-
闭包实现延迟计算可提升首屏性能。将非关键逻辑(如日志配置、缓存预热)封装为闭包,按需触发执行,避免阻塞首屏渲染与交互,从而优化TTI和LCP指标。
-
background-attachment:fixed在iOS和多数安卓WebView中被浏览器主动禁用以保性能,伪元素+position:fixed是可靠替代方案,需设top/left/right/bottom为0、z-index:-1、background-size:cover与center配合,并避免transform/filter干扰。
-
JavaScript数组去重无唯一最优解,需据数据特征选方案:基础类型且需保序用Set+扩展运算符;对象数组须自定义比较逻辑;超大数组优先用Map/Object哈希表降为O(n)。
-
是,但仅在特定场景下显著;*出现在选择器开头最危险,如*[aria-hidden="true"]或*>.tooltip会强制遍历整个DOM树,而受父级限定时影响很小。
-
预处理器提升代码可维护性,支持变量、嵌套与混合宏;2.PostCSS通过插件实现自动前缀、压缩与现代语法兼容;3.构建流程中先编译预处理语法再由PostCSS转换优化;4.Webpack配置需注意加载器顺序,确保sass-loader先执行,postcss-loader后处理标准CSS。
-
用element.closest配合dataset可实现轻量可靠的全局点击追踪:在顶层监听click,用closest('[data-track]')一步定位带标识元素,通过dataset提取语义化动作与上下文参数,支持容器校验、空值防护及兼容性处理。
-
Bootstrap5Tabs淡入需为每个tab-pane同时添加fade、show和active类,并配transition;data-bs-toggle替代data-toggle;href或data-bs-target必须与tab-paneid严格一致。