-
contenteditable仅提供基础编辑能力,不支持格式控制、撤销、安全粘贴等高级功能,适合轻量场景;真富文本需用Slate/Lexical等底层自研方案。
-
border-radius生效但图片圆角不显示的主因是父容器未设overflow:hidden,导致图片溢出不被裁剪;其次需排查transform、will-change、object-fit:none及iOS渲染兼容性问题。
-
Tailwind受欢迎是因为它精准匹配前端开发节奏与协作现实:样式内联HTML、响应式前缀化、无命名冲突、删除页面即删样式、主题切换便捷、不强制UI但提供灵活原子类。
-
原生CSS响应式适配工作量大,因需手动写@media断点、测多设备参数、处理老浏览器flexfallback及iOSSafariviewportbug;Tailwind通过sm:、md:等前缀在构建时生成真实CSS规则,实现“声明即适配”;Bootstrap5以container-fluid和g-3等现代工具类提供开箱即用的栅格与间距方案;但字体、图片srcset、表单样式等细节仍需手动处理。
-
必须设置border-style才能显示边框,通过border-width、border-color和border-style可分别定义宽度、颜色和样式,或用简写属性border统一设置,如"border:2pxsolidblue",也可单独设置某一边如border-top,四者结合CSS实现元素边框控制。
-
CSS中子代选择符“>”严格匹配直接子元素,空格为后代选择符会匹配任意层级;如ul>li只选一级子li,而ulli会选嵌套多层的li。
-
CSS新增的:has()伪类允许基于后代、兄弟或后续兄弟元素的状态反向影响祖先或前置元素样式,从而在纯CSS中实现传统上需JavaScript完成的“跨结构响应式样式控制”,如点击/悬停远端元素时改变非嵌套目标的外观。
-
JavaScript严格模式是ES5引入的更严格、更安全的运行模式,通过"usestrict"启用,主动报错而非静默失败;防止意外创建全局变量、禁止静默失败操作、限制不安全语法、增强安全与调试体验。
-
React函数组件每次渲染都会重新执行,但useState等Hook能让状态变量在多次渲染间保持存活——这并非依赖常规局部变量,而是通过JavaScript闭包与React内部Fiber节点协同实现的状态持久化。
-
JavaScript字符串是不可变原始类型,所有操作返回新字符串;应使用at()而非方括号访问Unicode字符,优先用includes()/startsWith()/endsWith()查找,慎用已废弃的substr(),注意locale敏感性和全角空白处理。
-
微信AndroidX5内核主动限制密码框focus事件,需避免自动聚焦、显式设置inputmode="text"、固定height并用flex布局、按钮用button标签且z-index>1,遵循X5特有规则而非标准浏览器逻辑。
-
后代选择器“抓太多”因匹配任意嵌套层级的元素;应优先用子选择器>限定直接子级,再结合语义化类名(如.card>.card-title)实现精准控制。
-
HTML5对移动端适配更强,因其原生支持viewport、flexbox/grid及媒体查询等响应式底层能力;而HTML4/XHTML需外部补丁,且在非HTML5doctype下viewport常失效、flex/Grid错位、媒体查询基准错误。
-
HTML可在嵌入式设备上通过三种方式实现轻量级UI:一、用lighttpd等微型Web服务器部署HTML文件;二、在Linux/RTOS中用WebView组件加载本地HTML并双向通信;三、在MCU上用Duktape等JS引擎解析HTML片段直驱硬件。
-
本文介绍如何遍历JavaScript对象,精准筛选出值等于目标值的键值对,并将其以对象形式收集到新数组中,避免常见误操作(如错误地推入整个对象)。