-
<header>是语义化元素,表示介绍性或导航性内容,可用于页面、<article>或<section>内部;仅当含标题、导航、作者信息等时使用,纯样式布局应选<div>;禁止嵌套或误用于页脚;<hgroup>已废弃。
-
for循环在多数场景下仍是最快选择,因现代引擎深度优化;forEach适合副作用操作但无法中断;map/filter等声明式方法应按需使用,注意性能开销;for...of兼顾可读性与控制力;真正瓶颈常在循环体内操作。
-
元素最终渲染高度=content高度+padding-top+padding-bottom+border-top+border-bottom(标准盒模型),padding独立撑开空间且不受line-height影响。
-
BigInt与Number不兼容,因类型系统禁止隐式转换,混合运算如1n+1会抛TypeError;必须显式转换,且BigInt()构造函数不接受Number参数,JSON、Math、Date等API均不支持BigInt。
-
生成器函数是用function*声明、通过yield暂停恢复执行的特殊函数,调用返回迭代器,next()方法控制执行节奏并支持双向通信。
-
柯里化将多参函数转化为单参函数链,组合通过pipe或compose连接函数,实现逻辑清晰、可复用的函数式编程。
-
通过自定义CSS可高效美化Typora学习笔记,提升可读性与结构感。首先在主题文件夹创建CSS文件并重启Typora以启用新主题;接着设置字体、行距优化排版,如使用思源黑体与FiraCode搭配,调整body行高至1.8;通过不同颜色与边框区分h1、h2、h3标题层级;为code和pre元素添加背景色、圆角与内边距以突出代码块;利用自定义class(如tip、note)创建提示或注释区块,并在Markdown中插入HTML标签应用样式;进阶可导入GoogleFonts、设置表格斑马纹、优化打印样式,逐步打
-
HTML内联样式需用引号包裹、声明间用分号分隔,避免引号嵌套错误;CSS压缩可能误删单位或分号,导致样式失效,应通过还原对比定位问题,优先用class切换实现响应式。
-
无法用Proxy+Reflect完美转发包含私有字段(#field)的类实例,因为私有字段在语法解析阶段即报错,Proxytrap和ReflectAPI均无法触达其访问逻辑。
-
qrcode.js不支持直接美化,需换库(如@xkeshi/qrcode)或用CSS容器装饰、Canvas二次绘制;前者支持logo、多色模块等原生配置,后者可导出含样式的高清PNG。
-
:root是CSS伪类选择器,匹配文档根元素(HTML中为<html>),特异性高于html选择器,主要用于声明全局CSS自定义属性,是主题切换和设计系统变量管理的首选挂载点。
-
用box-shadow模拟边框能绕过对齐问题,因为box-shadow不参与盒模型计算,不会改变元素宽高、padding或border-box尺寸,可严格保持Grid/Flex布局承诺,且天然兼容border-radius,但不支持虚线、点线及outline行为。
-
本文详解在存在多个类名的情况下,如何准确通过querySelector匹配“至少有一个类名以指定字符串结尾”的HTML元素,涵盖*=、~=等属性选择器的适用场景与关键区别,并推荐最可靠方案。
-
原生HTML无法实现多规格联动选择,必须配合JavaScript;关键在于HTML结构设计:用<fieldset>分组、<inputtype="radio">或<button>作为选项,添加data-spec和data-value属性,避免中文判断与硬编码映射。
-
clamp()在不支持的浏览器中整条声明被丢弃,导致布局塌陷;@supports应检测完整调用形式如font-size:clamp(0px,0px,0px),基础值须前置且静态,兼容旧环境需用calc()+媒体查询模拟,并统一所有响应式属性的降级策略。