-
应使用CSS控制字体样式,禁用已废弃的<font>标签;font-family需提供带通用族的字体列表,font-size推荐用px单位,color优先用十六进制或rgb();须避免行内重复书写、中英字体名混用及大小写错误,并注意system-ui的兼容性问题。
-
grid-row与grid-column用于精确控制网格项的行和列位置,支持通过数字、span关键字或命名线定义起始与结束线,实现灵活布局;使用span可简化跨行列设置,命名线提升代码可读性,配合z-index处理重叠,合理规划可构建清晰高效的复杂网格布局。
-
screen-spanning媒体查询不可靠,不应作为唯一判断依据;它仅在Chrome119+/Edge97+支持,Safari/Firefox不支持,且依赖真实双屏硬件与系统跨屏渲染模式,易因缩放、iframe或厂商屏蔽而失效。
-
TrustedTypes本身无防护作用,仅当通过HTTP响应头启用require-trusted-types-for'script'并配合trusted-typesdefault时,才对innerHTML、eval等高危sink抛出TypeError实现拦截。
-
能,但必须满足三个硬性条件:usemap值带#、<map>的name严格匹配、<area>坐标基于原始图片像素;漏掉任一条件热区完全不响应且无报错。
-
background-image不支持srcset,无法按设备像素比或视口宽度智能选图;@media切换仅改变URL,但所有匹配的背景图URL均会预加载,易造成带宽浪费与性能下降。
-
Less混合器无法返回值,需通过@_result变量加!important在调用处显式获取结果;适用于单次计算,不支持链式调用或@media内动态计算。
-
WeakMap不适合直接存“深度相等”缓存,因其键仅支持引用相等(===),无法识别结构相同但非同一对象的深度相等性;它只能实现同一对象多次调用的零成本复用,依赖对象身份而非内容寻址。
-
打印内容被截断或空白页多,核心是浏览器未合理处理分页逻辑;应优先用break-inside:avoid保持容器完整,慎用display:none,显式声明颜色与宽度,确保表头跨页复现,并将打印样式严格限定在@mediaprint块内。
-
formnovalidate属性必须加在<buttontype="submit">或<inputtype="submit">上且位于<form>内;它仅对提交按钮生效,用于单按钮跳过校验,与表单级novalidate互斥但优先级更高。
-
用reduce解析CSV可行但非最直观,适合边读边构建结构;简单CSV可直接split(",")配合reduce生成对象,复杂CSV需状态机解析引号与转义,推荐split("\n")后map+reduce组合实现更清晰健壮。
-
extends自动完成三件事:设置子类的[[Prototype]]指向父类、子类原型的[[Prototype]]指向父类原型、强制子类构造函数调用super();不调用super()会导致this未初始化而报ReferenceError。
-
无法自动感知最后一个引用消失,需手动引用计数+显式release清理,WeakRef与FinalizationRegistry仅作尽力而为的兜底提示。
-
box-shadow语法为box-shadow:h-offsetv-offsetblurspreadcolorinset,前两个参数必填,blur不可为负,inset须置末尾;常用示例:box-shadow:2px2px4pxrgba(0,0,0,0.2)。
-
必须使用Symbol.asyncIterator而非Symbol.iterator实现异步可迭代对象,因前者返回Promise<{value,done}>,后者仅支持同步返回;需用计算属性名语法定义[Symbol.asyncIterator]()方法。