-
按需加载CSS最常用方式是JavaScript动态创建并插入link标签,设置rel="stylesheet"和href后添加到head;需检查重复加载、监听onload/onerror,并结合点击、路由切换等业务场景触发。
-
应警惕布局嵌套超三层,优先拆分为独立组件并采用BEM扁平命名;Flexbox仅用于局部对齐,主结构用文档流;响应式规则内联组件内,状态样式与布局样式分离。
-
Symbol是一种唯一原始类型,用于创建不重复的标识符,可避免属性名冲突并模拟私有成员。通过Symbol()生成唯一值,即使描述相同也不相等;可用作对象属性键,不会被常规遍历方法读取;Symbol.for(key)在全局注册表中共享Symbol;常用于防止命名冲突、定义元数据及使用内置Symbol如Symbol.iterator。
-
display无法过渡因是离散属性,应改用opacity+visibility组合实现淡入淡出,需配合transition-delay错开visibility时机;若需收起空间,须追加max-height或height动画,并注意JS中transitionend事件监听与状态防抖。
-
答案:针对浏览器兼容性问题,可通过HTML条件注释(仅IE5-9)、CSS@supports特性检测、JavaScript动态加载样式等方法处理;推荐优先使用@supports进行特性检测,结合Autoprefixer和渐进增强策略,确保样式兼容性与可维护性。
-
transition无效的主因是hover前后属性类型不匹配:需确保属性名一致、值类型可插值(如颜色/长度/opacity)、初始值非auto/unset,且避免使用display/visibility等不可过渡属性。
-
浮动元素需配合position才能生效z-index,关键在于同一层叠上下文中通过relative或absolute定位设置层级,避免父级opacity、transform等限制,推荐用flex或grid替代float布局以减少冲突。
-
CSS选择器是选中HTML元素并应用样式的桥梁,包括基础选择器(如标签、类、ID、通配符)和高级选择器(如后代、子元素、兄弟、属性、伪类、伪元素),掌握它们可提升样式代码的灵活性与可维护性。
-
小元素在行内布局中易挤在一起,因默认inline元素受字体基线和vertical-align:baseline影响,导致垂直对齐不一致;推荐用inline-block+vertical-align或flex+gap统一控制间距。
-
HTML中绘制细线分隔有五种CSS方案:一、border单侧设置;二、hr重置样式;三、box-shadow模拟;四、渐变背景;五、伪元素绘制,各适用于不同场景与设备需求。
-
this的值由调用方式动态决定,而非定义位置;obj.method()中this为obj,独立调用时非严格模式下为window/globalThis,严格模式下为undefined,箭头函数则继承外层普通函数的this。
-
直接修改HTML文件中的<footer>区域即可更新版权信息,需替换其中的©年份和公司名,注意保留©实体;若为JS动态生成,须修改对应脚本或删除;多页需批量替换或统一引用。
-
fr单位按剩余空间分配而非容器总宽,受padding、gap、min-width影响;响应式需用repeat(auto-fit,minmax(280px,1fr));等高靠align-items:stretch或flex-column+margin-top:auto;IE11不支持fr,应降级为Flexbox。
-
box-shadow属性通过设置水平偏移、垂直偏移、模糊半径、扩散半径、颜色和inset实现元素阴影效果,常用于按钮悬浮、卡片立体化和内凹设计,合理调整参数可提升界面层次感与交互真实感。
-
GeolocationAPI可用于获取用户位置,适用于天气、地图等场景;使用时需用户授权且页面运行在HTTPS环境下;通过getCurrentPosition()获取一次位置,watchPosition()持续追踪,并可调用clearWatch()停止监听;需处理权限拒绝、定位不可用、超时等错误情况。