-
浮动元素错位因脱离文档流致父容器无法感知真实高度,矮元素右侧留空使后续元素上浮;硬设height易致溢出或留白;推荐用Grid替代,兼容性差时可退至Flex或用BFC清除浮动。
-
IE8不支持oninput事件,需用onpropertychange+onkeyup组合监听,并过滤非value属性变更;onpropertychange需校验propertyName==='value'并比对新旧值,再叠加onpaste/ondrop加setTimeout延迟读取以补全粘贴拖拽场景。
-
本文详解在HTML中存在多个同名(name)或重复ID(不推荐)表单元素时,如何安全、高效地批量获取其值,重点介绍getElementsByName和querySelectorAll的正确用法及最佳实践。
-
答案:通过background-image与background-clip:text结合-webkit-text-fill-color实现渐变文字。具体为设置线性渐变背景,用background-clip:text裁剪至文字区域,配合-webkit-text-fill-color:transparent使文字透明,从而显示背景渐变,需注意浏览器兼容性及回退方案。
-
Symbol.for()跨包“失效”是因为不同Realm或polyfill导致全局registry不共享;可靠方案是统一导出权威Symbol实例,或退用带命名空间的字符串key。
-
box-shadow四个参数依次为水平偏移、垂直偏移、模糊半径、扩展半径;颜色必须置于最后,否则整条声明失效;多层阴影从前到后绘制,inset需配合padding和颜色对比才可见;大圆角下建议用filter:drop-shadow()替代。
-
float元素无法垂直居中,因其脱离文档流导致父容器无高度基准;可行方案为改用table-cell(需设height)或flex布局,或临时用transform微调。
-
<p>at(-1)更优雅是因为它原生支持负索引、语义清晰、边界安全——-1直接表示末尾元素,空数组返回undefined且无副作用;而arr[arr.length-1]需手动计算长度,slice(-1)[0]有额外开销,str[-1]则因属性访问语义失效恒为undefined。</p>
-
@import无法实现真正的布局与内容分离,它仅拆分文件加载,不改变HTML结构与DOM层级,实际依赖选择器职责划分、命名约定(如l-、c-前缀)和层叠规则来隔离样式作用域。
-
根本原因是缩放导致CSS像素与物理像素对齐错位,触发0.5px级渲染裂缝;应优先用vw/vh替代px、避免单位混用,并将偏移交由支持亚像素的transform:translate()处理。
-
transition适用于简单状态过渡,animation配合@keyframes实现复杂动画;推荐使用transform和opacity以提升性能。
-
Chrome仅识别字面值translate="no",它是HTML5枚举属性(合法值仅"yes"/"no"),作用是阻止翻译器提取该元素及子节点文本,不改变DOM或JS执行;需在初始HTML的<html>标签声明,动态插入内容须手动添加,且需配合精确lang值(如lang="zh-CN")才能可靠生效。
-
答案是使用:disabled伪类可为表单元素设置禁用样式。当button等支持disabled属性的元素被添加该属性时,会自动匹配:disabled选择器,从而应用预定义样式,如改变背景色、文字颜色和光标形态,提升用户感知。例如通过CSS设置button:disabled{background-color:#ccc;color:#666;cursor:not-allowed;opacity:0.6}实现视觉上的不可用状态。注意仅表单元素如button、input支持disabled属性和:disabled
-
<h1>符号用于声明类的私有字段和方法,提供运行时硬性封装:仅类内部可访问,子类不可继承或访问,不参与原型链,支持初始化、getter/setter,但不支持计算属性、静态私有字段(暂未广泛实现)。</h1>
-
h1和h2标签在HTML中的三个关键差异是:1.h1用于页面主标题,h2用于子主题;2.h1字体默认比h2大;3.一个页面通常只有一个h1,多个h2用于划分章节。