-
默认content-box下width仅指内容区,padding和border额外增加总宽;切换border-box后width表示总宽,padding和border向内压缩。
-
本文介绍一种纯CSS解决方案,通过结构化HTML和相邻兄弟选择器(+),实现“仅在鼠标悬停于某节点时显示其直属.info-on-parent-hover子元素”,彻底避免祖先、后代或同级节点的提示信息误显。
-
卡片悬停上浮最稳方案是transform:translateY(-8px)配合transition:transform.2s–.3scubic-bezier(.4,0,.2,1),避免重排、兼顾性能与手感,需注意热区连续性、移动端优化及多卡片场景兼容性。
-
inline-block元素间存在空隙是HTML解析器将换行与空白符作为空文本节点渲染所致,并非bug;需通过font-size:0、注释或单行书写消除,同时须设置vertical-align控制对齐,且注意换行与宽度计算问题。
-
<progress>标签仅表示已知范围内的完成度,需手动用JavaScript更新value值以反映真实进度;无进度数据时应使用spinner等加载指示器,而非强行使用<progress>。
-
父容器高度塌陷是float设计机制所致,解决关键是让父容器重新感知子元素尺寸:现代推荐display:flow-root触发BFC,兼容老浏览器用.clearfix::after伪元素,慎用overflow:hidden;clear应加在需换行的后续兄弟元素上,非浮动元素自身;长期应优先采用flex或grid布局替代float。
-
核心是用classList.toggle()切换预设类名并由CSStransition实现渐变,配合requestAnimationFrame节流和window.scrollY阈值判断,避免强制同步布局,确保性能、维护性与兼容性。
-
disableRemotePlayback是HTML媒体元素的布尔属性,用于隐藏iOSSafari中视频右上角的AirPlay按钮,禁用远程播放控件;它自iOS14.5起稳定支持,仅作用于<video>和<audio>标签,不阻止系统级屏幕镜像。
-
JavaScript大对象内存泄漏主因是隐式引用未清除,赋值null仅在无其他引用时有效;应优先用WeakMap、destroy方法、避免闭包捕获等主动管理策略。
-
可通过五种方式阻止HTML5功能:一、Firefoxabout:config禁用MediaSource、WebAudio等API;二、uBlockOrigin等扩展用CSS隐藏video/audio/canvas;三、IE/EdgeLegacy降级文档模式;四、UA伪装为旧浏览器;五、禁用JavaScript间接停用依赖JS的HTML5特性。
-
答案:使用Flexbox实现侧边栏与内容区布局时,通过设置container的display:flex,结合flex-grow与flex-shrink控制空间分配;固定宽度侧边栏可设width和flex-shrink:0,内容区用flex-grow:1占满剩余空间;按比例布局时使用flex:1和flex:3等简写,配合flex-basis设定基准宽度,实现自适应与响应式效果。
-
bind创建的函数this在绑定时即固化且不可变,即使再bind、call或apply也无法更改;同时支持预设参数实现柯里化。
-
核心是用repeat(auto-fill,minmax(250px,1fr)))实现列数自适应:每列最小250px,剩余空间均分,auto-fill保持列宽稳定,gap控制间距;minmax第二参数禁用固定像素,推荐1fr。
-
HTML条件注释仅IE5–IE9支持,IE10+及现代浏览器完全不支持;替代方案包括document.documentMode检测、服务端UA判断、CSS类渐进增强和JS功能降级。
-
relative定位本身不使元素脱离文档流,仅作为absolute子元素的定位参照;需配合top/right/bottom/left才产生视觉位移,且其top向下偏移、left负值向左;它是最近非static祖先,但受外层定位元素或flex/grid布局影响。