-
使用CSS颜色变量结合媒体查询可提升响应式布局的维护效率与主题适配能力。通过:root定义全局变量如--color-primary,并在不同断点或深色模式中动态重设,实现跨设备视觉统一。组件直接引用var()调用变量,结构清晰且自动同步更新。建议规范命名如统一前缀--color-以避免冲突。
-
答案:通过flex属性组合实现固定与弹性宽度布局,如侧边栏固定、内容区自适应。具体为设置flex:00宽度值保持固定,flex:1使元素占据剩余空间,结合min-width:0防止内容溢出,适用于多组件响应式排列。
-
计算属性通过在get函数中主动兜底来安全处理null/undefined:对象解构用user||{}或可选链+空值合并,深层嵌套逐层判断,数值运算显式转数字,空值返回有意义默认值。
-
根本原因是浏览器默认启用长按文本选择,由user-select初始值决定;需结合user-select:none、-webkit前缀、touchstart拦截及针对性重置才能可靠禁用。
-
模板字符串中反斜杠默认被转义,易致路径或正则错误;应使用String.raw获取原始字符串,它保留所有反斜杠字面意义,支持插值但不处理转义,适用于Windows路径、正则表达式等场景。
-
WebWorker必须用外部JS文件启动且不支持DOM操作;通信依赖postMessage/onmessage;传大数组或buffer必须用transfer移交所有权,否则卡死;file://协议下不可用,需HTTP服务或ESM的newURL()写法;数据通过结构化克隆传递,无共享内存;错误需显式onerror捕获。
-
Chrome下input[type="search"]清除按钮需四行CSS才能彻底隐藏:先重置-webkit-appearance:textfield,再分别禁用::-webkit-search-cancel-button、::-webkit-search-decoration和::-ms-clear伪元素,否则会出现残留、留白或错位。
-
HTML5的<mark>标签在转PDF时默认不保留高亮,需显式定义CSS样式并选用支持该标签的工具;wkhtmltopdf和WeasyPrint支持但表现不同,pdfmake/jsPDF则完全忽略,推荐用class替代并配合打印预览验证。
-
novalidate仅禁用浏览器原生表单校验,无法阻止JS发起的fetch等请求;后端必须校验,前端只负责体验优化与预检。
-
块级元素与行内元素的核心差异在于默认盒模型行为和HTML语义约束:块级元素独占一行、可设宽高、可嵌套任意元素;行内元素横向排列、宽高由内容决定、不可嵌套块级元素(如<p>内不能放<div>),否则解析器将自动闭合,破坏DOM结构。
-
HTML无法实现交互通知面板,需JS控制DOM与状态、CSS实现动效;结构须语义清晰、层级扁平、关键节点带明确属性;CSS动画应避免height:auto过渡,改用max-height或transform:scaleY();JS需维护独立未读数变量、乐观更新、多端同步及焦点管理。
-
JavaScript是现代前端唯一能响应用户操作、修改DOM、发起网络请求的执行层,HTML和CSS无交互能力;它直接操作DOM节点树,通过document对象读写元素,修改内容、类名、样式或创建插入新节点,并需与HTML语义结构和CSS规则协同设计。
-
document.readyState的取值有uninitialized、loading、interactive、complete、loaded五种,现代标准稳定可用的仅loading、interactive、complete;它用于在DOM可交互但资源未全加载时介入,比onload和DOMContentLoaded更底层可控。
-
使用Flexbox替代float可解决右对齐布局问题。float:right易导致父容器高度塌陷、元素换行错位及内容环绕,需通过clear:both清除浮动;而flex布局中justify-content:flex-end能稳定实现子元素整体右对齐,且支持响应式设计。对于部分元素右对齐需求,可对目标元素设置margin-left:auto,推动其至最右侧,其余保持左对齐。现代布局推荐优先采用Flexbox方案,避免浮动副作用,提升维护性,仅在兼容老旧浏览器时考虑float。
-
font-display:fallback不会替换字体,仅在约100ms内决定是否使用后备字体,之后永不替换;它只在@font-face中生效,需配合合理后备链与preload使用。