-
span是轻量级内联钩子,无语义、无默认样式,需配合class/id/data-属性才能被CSS/JS识别;误用div会破坏布局,而span不干扰文档流;滥用或过度嵌套影响性能,且应优先使用语义化标签而非span。
-
新手用CSS做首个完整页面应先理清结构、善用Flex布局,再配合margin/padding控制间距,font-size/color建立文字层级,border/background/box-shadow提升质感,并通过开发者工具实时调试。
-
倒计时不准主因是setInterval固有延迟、客户端时间不可靠及时区错位;必须用目标时间减当前时间动态计算剩余值,并以服务端时间或performance.now()为基准校准,同时严格处理时区(如用UTC时间字符串构造Date对象)和控制DOM更新频率。
-
能,但非万能:box-sizing:border-box使padding包含在width内,适用于固定宽父容器;全局重置需慎用,flex/grid中需配合min-width:0等策略。
-
::backdrop仅对原生<dialog>调用showModal()时生效,非<dialog>元素(如div、自定义Modal)无法使用;必须显式设置background-color,且不支持z-index;兼容性差,旧版Safari等需回退手动遮罩层。
-
lang属性不是可有可无的装饰,它直接决定屏幕阅读器怎么读、浏览器要不要断字、拼写检查是否生效——设错或漏设,用户听到的就是一串发音错乱的语音。lang属性影响哪些具体行为它不控制翻译按钮是否出现,但会显著干扰浏览器对页面语言的判断逻辑。常见实际影响包括:屏幕阅读器(NVDA/VoiceOver)按lang值切换TTS引擎:若Bonjour没声明,可能用中文音念“Bon-jour”;hyphens:auto在CSS中仅当元素有合法lang且浏览器支持该语言时才
-
watchEffect默认不处理竞态,需通过AbortController取消旧请求、isActive标记防抖或useDebounce前置降频来解决;避免直接在其中写async逻辑。
-
十六进制颜色简洁通用,适合静态样式;RGB支持透明和动态调整,适用于交互场景。两者各有优劣,按需选择即可。
-
poster属性仅在视频未加载、未播放或加载失败时显示手动指定的静态图片,不自动截帧;失效主因是路径错误、格式兼容性差、CSS覆盖或加载时机不当,需预加载校验并降级兜底。
-
CSS动画期间点击失效的根本原因是浏览器事件捕获阶段对元素几何状态的快照滞后,而非CSS禁用交互;需结合animationstart/animationend/animationcancel三事件动态控制pointer-events,并在keyframes中显式声明,辅以will-change、transform替代方案及兼容性容错。
-
let和var的主要区别在于作用域、提升行为和重复声明:1.var是函数作用域,let是块级作用域;2.var会变量提升并初始化为undefined,let存在暂时性死区,未声明前访问报错;3.var允许重复声明,let不允许;现代JavaScript推荐使用let和const。
-
图片在flex容器中撑破父容器需同时设置img{max-width:100%;height:auto;flex:110},因flex默认行为会忽略max-width,必须通过flex-basis:0重置基准尺寸并启用缩放。
-
必须用<nav>而非<div>实现语义化导航,配合<ul><li><a>结构、Flex布局、hover/focus双状态样式及纯CSS汉堡菜单,兼顾可访问性、SEO与响应式。
-
String.prototype.replace()是同步方法,无法直接await异步脱敏;需分阶段协作:先用replace提取敏感片段并收集位置信息,再交由异步任务批量处理,最后按序拼接结果。
-
自动化部署通过GitHubActions实现CI/CD,1.创建.yml工作流文件定义步骤;2.使用SSH密钥安全传输文件至服务器;3.按分支设置触发条件区分环境;4.添加缓存与错误处理提升效率。