-
PostCSS插件如postcss-sprites通过遍历CSSAST中background-image等声明内的url()提取相对路径,映射本地文件实现图标收集;合图采用二叉树等算法,支持padding、algorithm、retina等配置控制布局与适配;偏移不准需检查图像压缩、CSS规则优先级及作用域穿透;Webpack下需显式指定spriteSheet路径或改用webpack-plugin-sprite以解决缓存导致的雪碧图未更新问题。
-
:hover不生效主因是权重不足、被覆盖、元素不可交互或伪类顺序错误;需确保元素有cursor:pointer、:hover写在常规样式后、遵循LVHA顺序,并避免在移动端单独依赖。
-
background-position:center不总居中是因为它只将背景图锚点设为容器中心,实际显示取决于图片尺寸与background-size配合;默认auto尺寸下大图会溢出,需搭配cover或contain及确保容器有可靠尺寸。
-
Object.entries返回一个二维数组,每个子元素为[key,value]形式的数组,仅包含对象自身可枚举、非Symbol的属性,不遍历原型链、不可枚举属性或Symbol键。
-
<inputtype="hidden">必须置于<form>内,设置合法name和动态/静态value,禁用敏感信息硬编码;CSS隐藏不可替代,因其语义错误且存在验证与可访问性风险。
-
HTML5播放器彻底绕过Flash依赖需从资源层、运行层双路径替换:SWF课件须转HTML5格式或重做;FLV/RTMP流需服务端转HLS/MP4并用hls.js播放;前端FlashAPI调用须重写为标准事件或postMessage通信。
-
KeepAlive本身不会导致内存泄漏,问题在于被缓存组件未清理的全局事件、定时器、第三方实例、watch副作用及大型数据引用;需在deactivated或beforeUnmount中显式清除。
-
用setInterval实现图片轮播需维护索引、防越界、确保加载完成再切换;CSS动画仅适合静态固定图;注意onload重复绑定、404处理、DOM缓存及visibilitychange控制后台运行。
-
正确做法是将图片嵌入相对定位容器,遮罩层同级绝对定位覆盖,仅对图片应用transform:scale()并设初始值,配合overflow:hidden防溢出、display:block去间隙、opacity过渡遮罩,触屏需JS降级处理。
-
Chrome仅识别字面值translate="no",它是HTML5枚举属性(合法值仅"yes"/"no"),作用是阻止翻译器提取该元素及子节点文本,不改变DOM或JS执行;需在初始HTML的<html>标签声明,动态插入内容须手动添加,且需配合精确lang值(如lang="zh-CN")才能可靠生效。
-
父容器背景不显示是因浮动元素脱离文档流导致高度塌陷,解决方法为清除浮动。推荐使用伪元素清除法:.container::after{content:"";display:block;clear:both;},同时可结合overflow:hidden触发BFC,确保父容器包裹子元素并正常显示背景;避免背景重叠需设置margin间距、合理宽度及box-sizing:border-box。
-
答案:基于JSON语言包和自定义I18n类实现前端国际化,通过data-i18n属性标记元素,支持动态加载与切换语言。
-
用iframe嵌入静态地图最简:直接复制GoogleMaps或高德地图分享页的iframe代码,设宽高像素值(如width="600"height="400");示例高德:<iframewidth="600"height="400"src="https://www.amap.com/embed?marker=116.48,39.99&zoom=14"></iframe>。
-
HTML表格通过table、tr、td/th构建,支持border样式、colspan/rowspan合并单元格、caption标题及thead/tbody/tfoot语义结构。
-
VueRouter的通配符/:pathMatch(.*)*无法捕获已匹配动态路由(如/movie/:id)的非法参数请求,需结合参数正则约束、服务端响应拦截与路由守卫实现真正可靠的404处理。