-
JavaScript事件是交互的触发机制,需用addEventListener绑定并确保DOM就绪;阻止默认行为用e.preventDefault();重复触发常因监听器重复添加,可用once选项或事件委托解决。
-
标签云必须用<ul>结构并设data-weight属性,归一化为1–4整数档,字号用em或clamp(),布局用flex-wrap,否则失去语义、无障碍与响应式能力。
-
JavaScriptTreeShaking是通过静态分析ES模块import/export依赖图,在打包时移除未使用代码的优化技术,要求使用ES模块、支持该特性的打包工具(如Webpack4+、Vite、Rollup)、无副作用代码,并需配置"sideEffects"字段及规范导出方式,最后必须在production模式下构建并验证生效。
-
CSS.registerProperty是CSSHoudini特性,用于注册带类型、初始值、继承性等元信息的自定义属性,使浏览器能校验值合法性并支持transition/@keyframes动画。
-
threshold仅按可见比例触发,对高矮元素响应不一致且无法保证加载完成;rootMargin通过扩展视口边界实现可控预加载,需带单位(如'200px0px'),配合isIntersecting判断和及时unobserve/disconnect避免重复加载与内存泄漏。
-
设置overflow-y为auto或scroll可解决内容截断问题,1.容器固定高度搭配overflow:hidden会导致溢出内容被隐藏;2.使用overflow-y:auto在垂直方向超出时自动显示滚动条;3.可配合overflow-x:hidden控制横向不滚动;4.需避免子元素的绝对定位或flex布局破坏滚动结构。
-
charset属性仅对外部JS文件生效,优先级低于HTTP响应头和BOM;内联脚本忽略该属性;正确场景限于静态托管且服务器未设置charset响应头时。
-
download属性在IE和Safari中完全不支持,因WebKit/Trident内核未实现该特性;Chrome/Firefox仅支持同源URL且受MIME类型影响;跨域或预览型资源会失效;推荐fetch+Blob+createObjectURL方案并配合服务端Content-Disposition响应头。
-
currentColor是CSS中实时继承元素color计算值的关键字,仅适用于颜色属性,不可用于非颜色上下文或赋值给自定义属性,现代浏览器均支持但需注意属性兼容性与失效静默问题。
-
HTML项目目录结构有五种方案:一、基础静态网站结构,强调简洁快速部署;二、模块化组件驱动结构,提升复用与协作效率;三、构建工具集成结构,支持源码与产出分离;四、多语言适配结构,实现路径隔离与SEO友好;五、微前端式单页嵌套结构,保障子应用独立性。
-
vertical-align仅对inline/inline-block元素生效,float元素脱离文档流后变为块级框,vertical-align对其无效;浮动导致父容器高度塌陷,叠加line-height与基线对齐产生底部空隙,真正解法是改用display:block、inline-block+vertical-align或flex布局。
-
使用CSS的background-image属性是设置HTML背景图片的核心方法,通过url()指定图片路径,并结合background-size、background-repeat等属性控制显示效果。常见问题如路径错误、元素无高度、CSS优先级冲突等需逐一排查。为实现响应式,推荐使用background-size:cover或contain,并配合媒体查询适配不同设备。此外,支持多重背景图叠加及与CSS渐变组合,通过逗号分隔多个值,实现丰富视觉层次,提升设计灵活性。
-
TrustedTypes不能彻底消除XSS,但可阻断未封装的innerHTML赋值——需CSP头启用、策略全覆盖且无逃逸;策略非净化器,应优先用textContent或预编译模板。
-
HTML高频面试题源于真实开发痛点:DOCTYPE缺失致怪异模式、src/href混用影响资源加载、语义标签误用损害SEO与无障碍、viewport缺失导致移动端显示异常。
-
箭头函数没有自己的this,其this值在定义时就确定,沿词法作用域向上查找最近的非箭头函数执行时的this,不随调用方式改变,也不支持call/apply/bind或new调用。