-
TypeScript通过类型注解和类型推断实现静态类型检查。开发者可显式标注变量、函数参数及返回值类型,如constage:number=25;同时编译器能根据初始值自动推断类型,如constcount=42被推断为number。两者结合提升代码安全与可维护性。
-
直接用opacity动画切换背景图会闪屏,因background-image不支持透明度动画,单容器切换时新图未加载完即触发opacity变化,导致空白或残留;须用双层绝对定位容器预加载图片,通过opacity关键帧与z-index类控制实现平滑淡入淡出。
-
inline-block元素间存在空隙是HTML解析器将换行与空白符作为空文本节点渲染所致,并非bug;需通过font-size:0、注释或单行书写消除,同时须设置vertical-align控制对齐,且注意换行与宽度计算问题。
-
classList.toggle本身不触发CSS动画,需配合类名切换和正确的transition声明;必须在基础状态设transition:transform,起始transform值要明确,禁用display:none,JS只切类名不操作style。
-
HTMLpattern属性本质是浏览器原生正则匹配机制,仅作用于input值且遵循ECMAScript语法,自动锚定、不支持PCRE特性,需配title提示,空字符串默认通过,服务端校验不可依赖。
-
transition可实现CSS样式平滑过渡,通过property、duration、timing-function和delay四个子属性控制动画效果,常用于鼠标悬停等交互场景。
-
onUnmounted是Vue3CompositionAPI中用于组件销毁前清理资源的标准钩子,必须在使用定时器、全局事件监听器、第三方实例、未完成请求及手动store/watch订阅时调用以防止内存泄漏。
-
HTML无原生筛选弹窗,需HTML+CSS+JS协同实现;<dialog>提供语义化基础但需JS控制显隐与兼容处理;筛选结构应语义化分组、包裹form便于数据提取与重置;弹窗仅负责返回过滤对象,由调用方决定请求逻辑;移动端需防点透、管焦点、适配滚动与输入事件。
-
根本原因是浏览器对字体度量和基线对齐策略不同:Chrome依em-box,Firefox依ascent/descent,Safari还叠加iOS缩放与旋转干扰;normalize.css通过统一html的line-height:1.15等基准值来收敛差异。
-
nth-child选择器按元素在父容器中的位置应用样式,常用于实现表格或列表的奇偶行交替样式。其语法为:nth-child(an+b),odd和even是常用简写,分别对应2n+1和2n。例如tabletr:nth-child(odd)设置奇数行背景色,ulli:nth-child(even)设置偶数项样式,实现斑马条纹提升可读性。需注意nth-child基于所有子元素计数,不区分标签类型,若需按特定标签排序应使用nth-of-type。
-
用HSL调提示色更直观可靠,因H、S、L三维度独立可控;推荐参数:H90–160°、S60%–85%、L80%–92%,并确保文字对比度≥4.5:1。
-
clip-path动画卡顿或跳变是因为关键帧间无法插值,仅inset()和circle()等数值型函数支持线性插值,polygon()或path()因坐标数量/结构不一致会直接跳变;应统一函数类型、固定顶点数与顺序,或改用SVG/SMIL/GSAP。
-
Flex项目height:100%需父容器有明确高度(如min-height:100vh),否则失效;应优先用flex:1填满剩余空间,并配合overflow-y:auto和min-height:0控制溢出;IE11需额外处理height:100%兼容性。
-
transform:scale()用于无损缩放,scale(x)水平缩放,scale(x,y)分别控制XY轴,scale(1)为原尺寸,scale(0)视觉消失但占位;需配合animation与完整transform声明使用,注意transform-origin和图层优化。
-
启用u修饰符是解决JavaScript正则处理Unicode字符出错的关键,它使引擎以Unicode代码点为单位匹配,支持\p{...}、正确解析emoji和重音字符、量词作用于完整字符,并要求现代环境支持。