-
答案:CSS引入不生效常见于路径错误、优先级冲突、加载顺序或缓存问题。首先检查文件路径是否正确,利用开发者工具的Network面板确认CSS是否成功加载(状态码200且MIME类型为text/css)。若文件加载正常但样式无效,通过Elements面板查看样式是否被覆盖,判断选择器优先级问题,避免滥用!important,可通过提高选择器特异性或调整引入顺序解决。注意@import会导致串行加载影响性能,推荐使用<link>标签。最后排查缓存问题,可强制刷新或禁用缓存调试。
-
JavaScript生成随机数核心是Math.random()返回[0,1)浮点数;整数需用Math.floor(Math.random()*(max-min+1))+min确保含边界;小数先放大取整再缩小;安全场景须用crypto.getRandomValues()配合拒绝采样。
-
JS动画仅在依赖运行时数据、需逐帧控制、多元素联动或CSS无法实现特殊缓动时必要;优先用CSStransition/@keyframes或Element.animate(),手写requestAnimationFrame须处理取消、时间校准与跳帧保护。
-
HTML5拖放必须四步全做:设draggable="true"、dragstart中调setData()、dragover中preventDefault()、drop中用匹配类型调getData(),缺一不可。
-
首先获取关键性能指标,再通过PerformanceAPI采集数据。FP、FCP、LCP衡量渲染速度,FID反映响应延迟,TTFB评估网络性能,结合PerformanceObserver和navigation/paint类型数据实现精准监控与上报。
-
可通过五种方法实现静态图片的平滑视觉变化:一、CSS3transition控制类名切换实现淡入淡出;二、transition组合transform实现缩放与位移;三、requestAnimationFrame驱动逐帧JS动画;四、@keyframes定义多阶段动画并绑定触发;五、WebAnimationsAPI直接操控动画实例。
-
推荐使用CSSGrid结合fr单位与minmax()及auto-fit实现响应式网格列。通过grid-template-columns:repeat(auto-fit,minmax(250px,1fr))可自动调整列数,每列最小250px、最大均分剩余空间,适配不同屏幕;搭配gap设置间距,小屏下自然堆叠。如需精细控制,可辅以媒体查询在特定断点固定列数,例如大屏四列、平板两列、手机单列。同时建议设置max-width:100%防止图片溢出,确保内容可访问性与布局美观,整体语义清晰、维护简便。
-
本文详解无需额外容器、仅通过纯CSS(display:block+margin:0auto)水平居中<img>元素的方法,兼容性好、语义清晰,比滥用Flexbox更合理。
-
auto-fill会保留空轨道以保持列结构,适合画廊等需对齐的布局;auto-fit则拉伸实际内容列以填满容器,避免空白,适合动态内容。两者结合minmax可实现灵活响应式网格,无需媒体查询即可适应不同屏幕尺寸,提升布局效率与视觉效果。
-
使用min-width防止百分比宽度在小屏下过窄,结合max-width与媒体查询优化响应式布局,确保元素在不同设备上保持可读性和合理尺寸。
-
ServiceWorker需手动注册、管理缓存并仅在HTTPS/localhost生效;注册须早于页面加载、检查支持性,经历install→waiting→active状态;fetch事件中应区分document与资源请求,结合预缓存与运行时缓存策略;缓存命名须版本化,并在activate中清理旧缓存。
-
rgba()仅影响颜色透明度,opacity影响整个元素及其子元素;通过rgba设置背景透明可实现图层叠加效果,结合opacity可控制整体视觉层次,常用于创建不干扰文字的透明遮罩。
-
async和defer仅在HTML5中有效,HTML4中被忽略;async下载完立即执行且不保序,defer则按序于DOM解析后执行,二者均只对带src的外部脚本生效。
-
HTML5应用无法真正卸载,需分层清理各宿主环境的状态:登出逻辑、缓存、权限、入口及第三方SDK状态,并按平台差异调用对应API,缺一不可。
-
Flex元素无法放大主因是缺乏剩余空间或受固定尺寸限制,需确保父容器为flex布局、移除width/height、合理设置flex属性并处理内容最小尺寸。