-
CSS中文乱码主因是编码链路断裂:@charset必须位于文件最开头(无BOM、空格、注释),服务器需返回Content-Type:text/css;charset=utf-8,HTML中link标签charset属性仅兼容旧IE,字体名及中文路径须加英文双引号。
-
答案:在HTML中运行JavaScript需使用<script>标签,可内联编写或通过src引入外部.js文件;推荐将脚本放在</body>前或使用DOMContentLoaded事件确保DOM加载完成;注意检查语法错误、文件路径及执行时机以避免常见问题。
-
闭包是指函数能访问并记住外部作用域变量,即使外层函数已执行完毕。如inner函数持续引用outer中的count,实现私有变量、事件回调数据保持、函数工厂等场景,但也需注意内存泄漏问题。
-
注册表单需用<form>配method="POST"和action,所有<input>必须有name属性,type="email"/"password"提升体验,required/pattern仅作前端校验,后端验证不可替代。
-
原生HTML+CSS+JS可实现轻量模态框:用position:fixed容器、z-index分层遮罩与内容、display/visibility控制显隐;需监听Escape键和遮罩点击(e.target===e.currentTarget)、禁用背景滚动、焦点管理(自动聚焦首个可交互元素、Tab循环、关闭后恢复触发源焦点)、支持innerHTML动态内容(注意XSS)、aria-modal="true"提升可访问性。
-
box-shadow无法实现真正内层边框因其阴影总绘制在元素背景和边框之上,无法穿透到内容层下方;多层外边框可用多个box-shadow值叠加,嵌套式内外多层须用伪元素或额外包裹层。
-
Proxy实现数据验证的核心在于利用set陷阱拦截属性赋值操作并执行验证逻辑。1.当尝试设置属性值时,set陷阱被触发,可在其中定义验证规则;2.若验证失败,抛出错误或返回false阻止赋值;3.若验证通过,使用Reflect.set将值写入原对象;4.相比传统方式,Proxy具有非侵入性、集中化管理和更广的拦截范围等优势;5.Proxy还可用于响应式系统、权限控制、日志记录等场景;6.错误处理推荐抛出Error实例,并结合try...catch捕获,同时转化为用户友好的界面反馈。
-
防止焦点在模态框外泄露的关键是正确建立并维护可控焦点边界,需四步闭环:打开时立即聚焦首个可聚焦元素;Tab键循环限制在模态框内;背景内容设inert或polyfill禁用交互;关闭后将焦点返回触发源或最近可聚焦祖先。
-
使用a:visited伪类可改变已访问链接颜色,需按LVHA顺序定义link、visited、hover、active状态,且受限于隐私保护,仅允许修改color等少数属性。
-
使用pointer-events:none可使元素不可点击,该属性禁用鼠标和触摸事件并允许事件穿透至下层元素;需配合cursor:not-allowed、opacity或filter视觉提示,以及tabindex="-1"和aria-disabled="true"确保可访问性,避免仅依赖display或visibility等伪禁用方式。
-
JavaScript中的逻辑赋值运算符通过结合逻辑判断与赋值操作提升代码简洁性。1.||=(逻辑或赋值)在左侧为假值(如false、0、空字符串、null、undefined、NaN)时赋值,适用于设置默认值;2.??=(空值合并赋值)仅在左侧为null或undefined时赋值,避免误判0、空字符串等合法假值;3.&&=(逻辑与赋值)在左侧为真值时赋值,常用于前置条件检查。这些操作符分别简化了条件性赋值场景下的代码结构,使代码更清晰高效。
-
HTML5本身无内置地图组件,点击图标展示图片需依赖JavaScript+第三方地图SDK(如高德);用<map><area>仅支持静态图像映射,无法动态展示图片。
-
JavaScript中的类型转换分为隐式和显式两类:隐式由引擎自动触发(如==、+运算),规则复杂易出错;显式由开发者明确调用(如Number()、String()),意图清晰、可控性强;推荐优先使用===和显式转换以提升代码安全性与可维护性。
-
::after阴影不平滑的根本原因是未正确启用过渡动画。需确保伪元素始终渲染(设content、尺寸、定位及初始box-shadow),transition必须写在::after上,且hover前后box-shadow参数结构一致,推荐用filter:drop-shadow替代以提升性能。
-
label默认不对齐顶部是因为其作为行内元素,vertical-align默认为baseline,导致与input基线不一致而视觉错位;flex布局(flex-direction:column)是顶部对齐最稳方案。