-
使用::placeholder伪元素可自定义输入框占位符样式,支持颜色、字体大小、粗细等;需注意浏览器兼容性,建议添加厂商前缀或由构建工具处理。
-
JavaScript中Set用于存储唯一值,可一行实现字符串字符去重(如[...newSet('abac')].join('')→'abc')或字符串数组去重(如[...newSet(arr)]),支持预处理实现忽略大小写/空白的语义去重,搭配Map还可统计频次。
-
原生<inputtype="time">仅在Chrome、Edge及iOS16.4+/macOSSafari中点击触发系统时间选择器;Firefox和旧版Safari仅显示文本框。showPicker()兼容性差,需元素已挂载且非隐藏,建议setTimeout调用;datetime-local在Android更稳定,但需适配日期格式;全平台一致需JS库兜底。
-
JavaScript展开运算符对对象仅做一层浅拷贝:基本类型值被独立复制,而嵌套对象仍共享引用;因此修改原始对象的深层属性(如x.address.city)会同步影响拷贝对象,但修改顶层属性(如x.name)则不会。
-
HTML转PDF字体丢失的根本原因是@font-face加载失败、PDF工具不支持远程字体且仅认本地.ttf/.otf文件;weasyprint需同目录.ttf+正确声明,wkhtmltopdf须系统安装字体并匹配家族名。
-
快速掌握HTML5需聚焦语义化标签、表单控件、音视频嵌入、Canvas绘图和响应式布局五方面:一、用header/nav/main/article/aside/footer构建清晰结构;二、使用email/url/number/date等input类型及required等属性实现原生校验;三、通过audio/video标签嵌入多媒体并控制播放;四、利用canvasAPI绘制矩形、圆形等基础图形;五、结合viewport元标签与媒体查询实现多端适配。
-
判断元素是否包含某个类名可以使用classList.contains()或className属性。1)classList.contains()方法简洁,返回布尔值,但不兼容旧版浏览器。2)className属性通过字符串操作判断类名,兼容性好,但需注意空格处理和性能问题。
-
StorageManager.estimate()方法异步估算当前origin的存储使用量(usage)和可用配额(quota),返回Promise,需安全上下文,结果为启发式估算而非精确值,适用于容量预警与缓存优化。
-
Map和Set是ES6引入的专用集合类型:Map支持任意类型键值对且有序,Set专注自动去重存储唯一值;二者均比Object更可靠,适用于动态键、非字符串键、顺序遍历及纯净数据场景。
-
用<video>标签嵌入视频需确保路径可访问、格式为H.264+AAC的MP4或WebM,添加controls和preload="metadata",移动端注意autoplaymuted组合及object-fit适配。
-
!important不是正解,因其引发权重死循环;Mixin通过构造高权重选择器(如.highter-spec()生成.btn.btn)可控提权,优于暴力!important。
-
objectStore.get()是IndexedDB中根据主键精确获取单条数据的核心方法,需确保数据库已打开、事务激活、对象仓库就绪,并传入类型匹配的主键值,返回Promise封装更易用。
-
padding不能让内容居中,它仅增加内边距;内容居中需配合text-align、flex或line-height等属性,且需注意单行限制、box-sizing及响应式适配。
-
HTML嵌套出错主因是违反内容模型:<p>内禁嵌块级元素,void标签不可闭合,<table>需<tbody>等中间层;浏览器会静默修复导致结构异常。
-
:first-of-type选中同类型子元素中的第一个,:last-of-type选中最后一个,二者按标签类型匹配,不受类名或ID影响。例如p:first-of-type将样式应用于首个段落,p:last-of-type作用于末尾段落,常用于文章段落、列表项或表单字段的首尾元素样式控制,如去除li:first-of-type上边距、加粗p:last-of-type文字,提升CSS简洁性与可维护性。