-
浏览器多图上传需设multiple属性和accept="image/*"MIME类型,禁用点号后缀写法;预览优先用URL.createObjectURL()并及时revoke;多组件共存时用class+closest隔离DOM;缩略图布局推荐CSSGrid。
-
CSScontent属性无法响应屏幕尺寸变化,必须配合媒体查询控制伪元素显隐;常见失效原因包括样式覆盖、display/visibility隐藏、空content值及布局塌陷;推荐移动优先写法并注意兼容性与布局抖动问题。
-
需结合HTML、CSS与JavaScript实现搜索框与导航菜单联动:一、监听输入高亮匹配项;二、点击菜单自动填充搜索框;三、搜索触发分组展开;四、用datalist实现自动补全;五、用:focus-within纯CSS展开菜单。
-
:not([class])只匹配HTML中完全未声明class属性的元素,如<p>文本</p>;一旦存在class=""、class=""或class="foo"等任何形式的class属性,即不匹配。
-
Refforwarding是React提供的透传ref机制,使父组件ref能直达子组件内部DOM节点;需用React.forwardRef包裹组件,并将ref显式绑定到目标元素,支持逐层透传与自定义Hook协同。
-
Nginx代理WebSocket升级失败的主因是Upgrade和Connection头未正确配置,而非证书问题;必须设置proxy_http_version1.1、proxy_set_headerUpgrade$http_upgrade、proxy_set_headerConnection"upgrade",并确保路径、域名、协议严格匹配。
-
最可靠的方式是通过服务器响应头配置X-Frame-Options或Content-Security-Policy;前端JS检测(如top!==self)和meta标签均不可靠,易被绕过或完全失效,且现代浏览器已忽略meta方式。
-
用带参数的.gradient-bg()混合函数,支持@start-color、@end-color、@direction及透明度微调,避免硬编码;多色用.gradient-bg-stops();注意转义方向值、变量定义顺序、CSS变量分层及Safari渲染兼容性。
-
JavaScript类实例可直接解构赋值,前提是属性为实例自身可枚举属性;也可通过toObject()方法返回纯对象再解构;或实现Symbol.iterator支持数组式解构;还可结合默认值增强容错性。
-
IE完全不支持all属性和unset关键字,整条声明被静默忽略;需手动重置margin、padding、border、font-size等关键属性为IE兼容值。
-
闭包是构建跨平台适配层最轻量可靠的方式,通过在初始化阶段固化环境配置并捕获为自由变量,使函数调用无需运行时判断,支持多平台专属实例、行为封装及工厂函数动态创建。
-
open是布尔属性,只检测存在与否而非值,故open="false"仍展开;JS应直接操作el.open属性,监听toggle事件,CSS用details[open]选择器响应状态。
-
JavaScript中最推荐的单例实现是模块级单例,利用ES6模块默认导出的天然单例特性,简洁、可靠且符合语言习惯;其次为ES6Class配合静态工厂方法,避免直接new;闭包方式适用于ES5环境。
-
placeholder属性需直接写在<input>或<textarea>标签内,如<inputplaceholder="请输入邮箱">,仅作临时提示,不提交、不替代label、不支持换行与变量,且须注意可访问性与样式兼容性。
-
根本原因是默认盒模型为content-box,padding和border不包含在设置的width/height内,而是额外增加;加padding后总尺寸=内容区+2×padding。