-
relative定位本身不使元素脱离文档流,仅作为absolute子元素的定位参照;需配合top/right/bottom/left才产生视觉位移,且其top向下偏移、left负值向左;它是最近非static祖先,但受外层定位元素或flex/grid布局影响。
-
HTML条件注释仅IE5–IE9支持,IE10+及现代浏览器完全不支持;替代方案包括document.documentMode检测、服务端UA判断、CSS类渐进增强和JS功能降级。
-
核心是用repeat(auto-fill,minmax(250px,1fr)))实现列数自适应:每列最小250px,剩余空间均分,auto-fill保持列宽稳定,gap控制间距;minmax第二参数禁用固定像素,推荐1fr。
-
bind创建的函数this在绑定时即固化且不可变,即使再bind、call或apply也无法更改;同时支持预设参数实现柯里化。
-
答案:使用Flexbox实现侧边栏与内容区布局时,通过设置container的display:flex,结合flex-grow与flex-shrink控制空间分配;固定宽度侧边栏可设width和flex-shrink:0,内容区用flex-grow:1占满剩余空间;按比例布局时使用flex:1和flex:3等简写,配合flex-basis设定基准宽度,实现自适应与响应式效果。
-
可通过五种方式阻止HTML5功能:一、Firefoxabout:config禁用MediaSource、WebAudio等API;二、uBlockOrigin等扩展用CSS隐藏video/audio/canvas;三、IE/EdgeLegacy降级文档模式;四、UA伪装为旧浏览器;五、禁用JavaScript间接停用依赖JS的HTML5特性。
-
结论:别用calc()+float封装三栏布局Mixin——兼容性假象大,维护成本真高,现代项目里纯属倒退。因calc()在旧版Safari等浏览器中存在解析异常,float布局本身已过时,且现代项目应优先采用Flexbox或Grid。
-
Symbol属性不可枚举,需Object.getOwnPropertySymbols()获取;作为原型属性时既隐式又可被继承访问,适合定义唯一协议方法(如serializable),避免命名冲突,支持跨模块共享、自动委托、运行时检测及多协议组合。
-
<p>JavaScript本身不支持注解语法,但可通过JSDoc注释为变量添加类型和说明,如/*@type{string}/constuserName="Alice";,配合工具实现类似功能。</p>
-
grid-auto-flow:column实现的是列优先填充而非单行横排,需配合grid-auto-columns、overflow-x和尺寸约束才能实现可滚动水平列表。
-
clamp()三个参数需验证生效区间:最小值16px在375px屏下对应2.5vw=9.375px<16px,故取16px;最大值24px在960px屏下2.5vw=24px,超此宽度即锁死24px;真正线性缩放仅发生在约640px–960px之间。
-
JavaScript语音识别主要依靠WebSpeechAPI的SpeechRecognition接口,需检测兼容性、处理权限与事件,适合网页实时转文字;不支持Safari,复杂需求需接入云服务或WebAssembly模型。
-
sandbox属性加了即“全锁死”:JS不执行、表单不提交、弹窗失效、localStorage不可读写,仅postMessage可用;须显式添加allow-scripts等白名单token才能放行对应能力。
-
CSScomb是一款用于统一CSS属性顺序的格式化工具,支持多种样式语言并通过配置文件定义排序规则。安装后可命令行运行或集成至编辑器实现自动整理,提升代码可读性与维护性。团队使用时应统一配置并注意属性层叠影响,合理应用可有效规范样式书写,适合纳入前端工程化流程。
-
答案:使用Flexbox居中需根据主轴方向正确设置align-items和justify-content。当flex-direction为row时,justify-content控制水平居中,align-items控制垂直居中;改为column时,主轴变为垂直方向,justify-content控制垂直居中,align-items控制水平居中,通过调整两属性可实现任意居中布局。