-
:first-child匹配父元素的第一个子节点,无视标签类型;:first-of-type匹配同标签兄弟中首个出现的元素。二者在纯同标签结构中效果相同,但混排时行为迥异,且:first-child易受文本节点干扰。
-
用HSL调整页面色调最高效的方式是统一使用hsl()函数并绑定CSS变量控制亮度(L值),再结合filter微调;通过修改--light等变量即可批量更新所有依赖颜色,配合媒体查询或JS切换主题类实现日间/夜间/高对比模式。
-
caption是表格唯一合法标题,必须作为<table>首个子元素;scope用于<th>定义表头作用范围;summary属性在HTML5中已废弃。
-
localStorage不是万能的持久化方案,它只存字符串、不跨域、没过期机制,用错地方会丢数据。localStorage.setItem()存不了对象或数组直接传JSON.stringify()以外的值,比如对象、数组、数字,会被自动转成"[objectObject]"或"1,2,3",取出来根本不是原来的东西。必须手动序列化:localStorage.setItem('user',JSON.stringify({name:'Alice',age:30}))读取时也要
-
滑动门技术利用两个嵌套元素设置不同背景图,外层控制左端,内层控制右端,中间随内容伸缩,实现自适应按钮或标签页效果;典型结构为a嵌套span,分别应用左右背景图并留出内边距,使整体如滑动门般伸缩;现因CSS3的border-radius、linear-gradient及flexbox等技术普及,已多用于老项目兼容,新项目普遍采用纯CSS方案替代。
-
用记事本写HTML需注意:文件名必须为index.html(小写),编码选UTF-8(无BOM);必备四要素——<!DOCTYPEhtml>、<htmllang="zh-CN">、<head>中<metacharset="UTF-8">(在<title>前)、非空<body>;本地双击打开用file://协议,图片用相对路径,JS模块需本地服务;验证用W3C校验器。
-
纯CSS开关需将checkbox置于目标元素前,用:checked+或~选择器控制显隐;label须正确绑定input;移动端需确保input可点击且z-index足够;JS操作应直接修改checked属性而非setAttribute。
-
事件循环是一种程序结构,它通过非阻塞操作和回调函数,使程序在等待I/O操作完成的同时执行其他任务,从而提高性能和响应能力。事件循环监听并分发事件,如用户点击、网络数据到达或定时器触发,调用相应的处理函数。它避免阻塞的方式包括非阻塞I/O和回调机制,使程序在等待I/O时继续执行其他任务。事件循环在I/O密集型应用中特别有用,如Node.js、Python的asyncio、浏览器JavaScript等,能显著提升并发处理能力。为避免“回调地狱”,可使用Promise和async/await简化异步代码,提升可
-
最稳妥方案是用display:flex实现三栏布局,左右固定宽(flex:00宽度),中间自适应(flex:1),兼容性好、语义清晰、响应式隐藏简单。
-
纯CSS树状目录需用隐藏checkbox+:checked控制显隐,子菜单设display:none、max-height过渡及overflow:hidden防溢出,label与input的id必须严格匹配且同级。
-
opacity使整个元素及子元素统一透明,适用于整体淡入淡出;rgba()仅让指定颜色通道透明,适合单独控制文字、背景等的透明度,且不触发新层叠上下文。
-
<!DOCTYPEhtml>的作用是声明HTML5文档类型,确保浏览器以标准模式渲染页面,避免因缺少声明导致的怪异模式问题;2.打开HTML文件最直接的方式是双击文件、拖拽到浏览器、右键选择打开方式或通过浏览器菜单的“打开文件”功能;3.现代开发使用<!DOCTYPEhtml>因其简洁且能统一触发标准模式,取代了HTML5前冗长复杂的DOCTYPE声明;4.更专业的查看方式包括使用代码编辑器(如VSCode配合LiveServer插件)实现实时预览,结合浏览器开发者工具(F12)检
-
最稳方案是父容器设display:flex并align-items:center,子项自动水平排列且垂直居中;inline-block易因空白符出缝隙,float已淘汰。
-
Blob是JavaScript中表示不可变原始二进制数据的内置对象,是二进制数据容器,可由字符串、ArrayBuffer等创建,File是其子类;需用newBlob([data])构造,读取依赖异步方法如text()或arrayBuffer(),下载时常用URL.createObjectURL()生成临时链接。
-
EventEmitter的最小可用实现是用不到20行代码支持on、emit、off三个方法,并为每个事件名维护回调数组以支持多次绑定;不能用addEventListener替代,因其仅限DOM元素且缺乏业务定制能力。