-
text-align:justify实现两端对齐但最后一行默认左对齐,中文自然,英文需配合word-break、hyphens等避免词间距异常,可用伪元素或text-align-last控制末行对齐。
-
window.print()方法能直接调用打印对话框,结合@mediaprint规则可优化打印样式。要优化打印页面,首先使用@mediaprint隐藏导航栏、侧边栏等非必要元素;其次调整字体颜色、大小和行高以增强可读性;再者处理图片,确保其清晰且布局合理;最后利用page-break属性控制分页,避免内容断裂。常见问题包括无法判断用户是否实际打印,可通过window.onbeforeprint和window.onafterprint事件进行近似控制;不同浏览器打印样式解析差异需通过多测试和调整CSS解决;
-
min-height设置元素内容区最小高度,结合box-sizing:border-box和padding可实现自适应布局,避免溢出需检查父级约束,在响应式中推荐使用vh单位与媒体查询优化显示效果。
-
错误边界是React类组件通过staticgetDerivedStateFromError或componentDidCatch捕获子组件JavaScript错误的机制,用于渲染降级UI和记录日志,防止应用崩溃,但无法捕获异步代码、事件处理器等错误。
-
清除浮动有四种常用方法:1.使用clear属性添加空元素,简单但不语义化;2.伪元素::after结合clear:both,推荐且无需额外标签;3.父元素设置overflow:hidden或auto触发BFC,简洁但可能裁剪溢出内容;4.display:flow-root创建新BFC,现代浏览器支持,最干净方案。实际开发中伪元素法最通用,flow-root更现代,按需选择。
-
需通过JavaScript监听回车键执行操作,推荐使用keydown事件配合event.key==="Enter"判断,并调用preventDefault()阻止默认行为;表单提交场景优先监听submit事件;应避免已废弃的keyCode属性,采用addEventListener与key属性提升兼容性与可维护性。
-
通过@font-face结合lang属性与unicode-range,可为不同语言指定专属字体,解决多语言网站中字体显示不一致问题。首先在CSS中定义针对中文、日文、英文等字符范围的自定义字体,如使用SimHei渲染中文(U+4E00-9FFF)、Meiryo处理日文(含假名与汉字)、Roboto显示拉丁字母(U+0000-007F),并通过body[lang="zh"]、body[lang="ja"]等选择器应用对应字体族。利用unicode-range实现按需加载,提升性能并避免混用导致的字号错乱。H
-
文字发灰主因是屏幕色域、亮度、对比度及环境光差异,非颜色值问题;应优先保障明度对比、采用LCH/OKLCH色彩空间、用@media适配屏幕特性,并确保WCAG对比度达标。
-
正则表达式是JavaScript中处理文本的强大工具,通过字面量或构造函数创建,使用元字符如\d、\w、^、$等匹配特定模式,结合g、i等标志实现全局或忽略大小写搜索;利用match()、replace()、search()和split()等方法可完成提取、替换、查找和分割操作,例如提取单词或验证邮箱格式;实际应用中需注意性能、正确转义特殊字符,并在动态构建时选用RegExp构造函数,掌握常见场景如表单验证与日志解析可显著提升文本处理效率。
-
外部HTML文件是独立的.html或.htm文件,可通过浏览器直接打开或由服务器通过URL提供;1.本地浏览可双击文件由默认浏览器解析;2.服务器托管时浏览器通过URL请求并渲染内容;3.外部HTML是完整网页文件,支持模块化与分离关注点,而内联HTML指嵌入标签内的样式或脚本,如style或onclick属性;4.确保跨浏览器兼容需遵循W3C标准、使用语义化标签、实施渐进增强与响应式设计,并通过多浏览器测试验证;5.常见挑战包括字符编码不一致导致乱码,应统一使用<metacharset="UTF-
-
JavaScript中的类是构造函数的语法糖,底层仍基于原型链;constructor即构造函数本体,方法默认定义在prototype上且不可枚举,extends和super本质仍是原型继承。
-
尾调用是指函数的最后一个动作调用另一个函数,ES6引入尾调用优化以重用栈帧、避免内存溢出,支持真正的尾递归,如阶乘函数通过累积参数实现。
-
1、可通过浏览器开发者工具复制HTML内容并保存为.html文件;2、使用“另存为”功能直接保存网页源码;3、利用curl或wget命令行工具抓取网页并保存;4、在控制台运行JavaScript代码提取并下载完整HTML。
-
Promise是异步操作的解决方案,通过状态管理(pending、fulfilled、rejected)实现链式调用与统一错误处理,其核心在于状态不可逆和回调函数的注册与执行机制,手写MyPromise可深入理解构造函数、then方法、resolvePromise等关键逻辑,结合发布订阅模式和微任务队列模拟异步流程,相比回调函数更清晰可控,且为async/await提供底层支持。
-
flex值分配需依布局意图匹配:固定尺寸设flex:00240px,自适应主内容用flex:110,文字块用flex:01auto,等宽按钮组用flex:110;注意flex-basis优先级高于width,auto与0行为不同,避免混用百分比basis与grow。