-
JavaScript数组常用方法分遍历(不改原数组)和修改(改原数组)两类:forEach、map、filter、find、some、every用于读取或生成新数据;push、pop、splice、sort等直接操作原数组;组合技巧如Set去重、flat扁平化、reduce求和提升开发效率。
-
语义化标签是HTML5中具有明确含义的元素,如header、nav、main、article、section、aside、footer,它们通过定义内容结构提升可读性、SEO和无障碍访问,正确使用需根据内容意义选择标签而非仅替代div。
-
应使用<mark>标记当前上下文中具有相关性或需视觉突出的文本,如搜索关键词、引用条款;它专为“高亮”设计,语义区别于强调重要性的<strong>和无语义的<span>。
-
link标签顺序影响样式是因为浏览器按HTML中从上到下顺序加载CSS,后加载的同权重规则会覆盖先加载的;推荐顺序为reset→base→components→page/theme。
-
普通函数独立调用时,this指向全局对象(非严格模式)或undefined(严格模式);箭头函数无this,继承外层作用域;事件处理器中this默认指向绑定元素,类方法作事件处理器易丢失this;call/apply立即执行并绑定this,bind返回预设this的新函数。
-
rgba()和hsla()的alpha参数必须为0–1小数,不支持百分比;二者控制颜色自身透明度,不影响子元素,而opacity会作用于整个元素及其后代。
-
::first-letter伪元素可实现首字放大,但仅对块级元素生效,作用于段落首个字母或汉字;行内元素需设display:block/inline-block;注意空格、标签干扰及部分盒模型属性不支持。
-
本文详解Anybody变量字体中font-stretch失效的根本原因:GoogleFonts加载URL中声明的wdth轴范围必须严格匹配字体实际支持的区间(Anybody仅支持50–150),超出则导致轴被静默忽略。
-
list-style属性用于设置列表标记样式,包含type、image、position三个子属性,可定义类型、图片和位置;使用list-style-image能替换为图片符号,但尺寸不可控;推荐通过list-style:none结合background-image实现完全自定义,便于控制图标大小与间距;常见type值有disc、circle、square、decimal等,none可去除标记,适用于导航菜单。
-
flex-wrap:wrap实现自动换行,需配合flex-basis或width控制子项基础宽度,并注意flex-shrink默认值导致的压缩不换行问题及gap兼容性陷阱。
-
伪类和伪元素不能像函数调用一样连写,但可合法组合为:hover::after表示悬停时渲染伪元素;必须设置content(非none或空值)且父元素需position:relative以支持position:absolute定位;移动端hover不可靠,应配合媒体查询或JS降级。
-
粘性定位元素滚动时“消失”是因触发条件未满足或父容器干扰:需确保父容器有可滚动上下文、top值合理、无裁剪遮挡及兼容性问题。
-
使用Flexbox布局可实现响应式按钮组,通过display:flex、gap和flex-direction在不同屏幕下控制排列与间距,结合媒体查询适配移动端,确保美观与可用性。
-
使用CSSGrid的auto-fill和grid-gap可实现响应式瀑布流布局,通过repeat(auto-fill,minmax(250px,1fr))创建自动换行列,结合gap设置项间距,利用内容高度差异形成视觉错落,无需JavaScript即可构建美观的类瀑布流效果。
-
Promise是封装异步状态并支持链式响应的构造器,需传入含resolve/reject的executor函数,then()第二参数不等价于catch(),async/await需try/catch捕获错误,all/allSettled选择取决于容错需求。