-
CSS是实现水印最轻量稳妥的选择,推荐用body::before伪元素叠加透明文字层,设fixed定位、100%宽高、pointer-events:none,并为打印添加专用mediaquery样式。
-
HTML5规范中默认为行内元素的是phrasingcontent类元素,如a、span、strong、em、img、input、label、button、code、br、abbr、b、cite、dfn、i、kbd、mark、q、samp、small、sub、sup、time、u、var等,其中img和input虽表现似inline-block,但语义属行内。
-
fixed导航栏遮挡锚点内容是因浏览器将目标元素顶部对齐视口顶部,而scroll-padding-top(设于html)可精准偏移滚动终点,仅影响滚动逻辑不破坏布局,Chrome89+/Firefox90+/Safari15.4+原生支持。
-
能,但仅限width、background-color、border(部分浏览器)、visibility:collapse等少数CSS属性;color、font-size、text-align等无效,且background易被td覆盖,需配合border-collapse:collapse才可靠生效。
-
箭头函数不绑定自身this,而是继承外层作用域的this值;它用=>定义,无arguments、prototype、super和new.target,不能作为构造函数。
-
<animate>在现代浏览器中已废弃,Chrome102+、Firefox86+、Safari16.4+移除SMIL动画支持,因其与CSS动画和WebAnimationsAPI重叠且存在安全性能隐患;应改用CSS@keyframes或WebAnimationsAPI替代。
-
触摸交互必须用BEM修饰符(如btn--pressed)配合JS显式控制,禁用:active伪类;需同步touchstart/touchend、focus/blur及aria-pressed,并确保PurgeCSS保留状态类。
-
会,text-shadow模拟加粗因软边阴影导致文字模糊,尤其小字号或Retina屏;需设blur-radius为0,用多方向1px硬边阴影(如-1px00,1px00等)并启用GPU加速。
-
浮动与定位的核心区别在于对文档流的影响及使用场景。①浮动(float)使元素半脱离文档流,仍影响相邻内容,常用于文本环绕和简单布局,但需清除浮动以解决高度塌陷问题;②定位(position)则让元素完全脱离文档流(如absolute、fixed),实现精确位置控制和层叠效果,适用于弹窗、固定导航等场景;③两者关系在于均用于改变元素位置,但浮动侧重排版,定位侧重精准放置;④在响应式设计中,浮动因复杂布局和顺序控制的局限逐渐被Flexbox和Grid取代,而定位因其固定、叠加和粘性能力仍不可或缺;⑤层叠上下文
-
Map和Set通过树形(如TreeMap,O(logn))或哈希(如HashMap,平均O(1))实现,将查找、插入、删除从O(n)优化为稳定高效,适用于动态频繁操作场景。
-
本文详解如何将HTML中<script>标签内的JavaScript逻辑提取为外部.js文件,并确保功能正常运行,涵盖文件创建、HTML引入方式、执行时机控制及常见错误规避。
-
状态模式通过封装对象状态及其行为,使对象在内部状态改变时改变其行为,避免复杂条件判断。上下文(如Light)持有当前状态,并将状态相关操作委托给具体状态对象处理;具体状态(如OnState、OffState)实现各自行为逻辑并可切换状态。示例中灯的开关通过press方法触发不同行为,无需if/else判断。优点包括消除条件逻辑、提升扩展性与职责清晰,适用于多状态场景如订单流程、按钮状态、游戏角色动作等,增强代码可维护性与灵活性。
-
用dataset属性标记本地修改但未同步的DOM元素,需用JSON.stringify序列化原始值存入data-original,编辑时同步当前值到data-current并比对,配合localStorage存最小patch实现离线冲突识别。
-
Generator自动执行器不解决分布式“分布”问题,但通过线性化、可中断恢复的控制流,封装请求意图并由执行器统一注入服务发现、重试、熔断、traceId透传等横切逻辑。
-
采用模块联邦与运行时加载实现微前端热更新,通过子应用独立构建部署、主应用动态引入JS包,结合生命周期卸载旧实例、SystemJS或import()加载新版本,利用manifest文件检测更新并配合CDN缓存策略,确保不刷新页面即可完成局部热替换。