-
纯CSS无法让伪元素边框自动贴合文字长度,但可用transform:scaleX()配合inline-block容器模拟可变长效果;需设width:100%、transform-origin:leftcenter,并处理换行、继承、居中及兼容性问题。
-
Phaser适合熟悉JavaScript的前端开发者快速开发休闲游戏原型;CocosCreator适合需多平台发布的中重度项目;PixiJS适合高帧率交互动画;Construct适合无代码美术团队做试玩版。
-
CSSGrid是实现真正响应式瀑布流的最优方案,通过grid-template-columns配合grid-auto-flow:dense控制布局,避免Flexbox伪流和column-count顺序错乱问题。
-
grid-auto-rows仅控制隐式网格行高度,对grid-template-rows定义的显式行无效;align-items只影响内容对齐,不改变行高;统一行高需用repeat(3,1fr)或统一写死grid-template-rows。
-
模态窗口的层叠显示依赖CSS定位与层级控制,需注意以下要点:1.使用position:absolute使模态框脱离文档流,并相对于最近的已定位祖先定位,配合top、left和transform实现居中;2.当父容器设置overflow:hidden且为定位上下文时,absolute元素会被裁剪,解决方法是将模态框移出该容器或使用position:fixed;3.通过z-index控制层叠顺序,确保模态框(如z-index:1000)高于遮罩层(如z-index:999)及其他页面元素;4.推荐将模态框挂载
-
答案:动态加载通过import()实现按需加载,提升性能。利用ES模块的import()函数可异步加载代码,结合构建工具实现懒加载与代码分割,解决首屏加载慢、资源浪费等问题,适用于路由级或功能级模块拆分,同时需注意错误处理、缓存策略、依赖管理及SSR兼容性,避免过度拆分导致请求过多,确保应用性能与用户体验平衡。
-
固定定位使元素相对于视口固定,不随滚动移动。设置position:fixed并配合top、right、bottom、left定位,常用于导航栏、返回顶部按钮、悬浮图标等需常驻显示的组件。需注意元素脱离文档流可能覆盖内容,应合理使用z-index;移动端部分浏览器存在兼容性问题;父元素若含transform等属性会改变定位参考系;避免在fixed元素中使用未明确祖先高度的百分比高度。掌握“相对于视口”这一核心即可有效应用。
-
闭包是函数与其定义时词法环境的绑定关系,关键在于内部引用外部非全局变量且在外部调用;常用于封装私有状态,但不当使用易致内存泄漏。
-
transition必须写在基础样式里,否则首次hover无动画;应避免all,优先用transform和opacity实现GPU加速;移动端需处理300ms点击延迟。
-
margin、border和padding影响元素布局空间:content为内容区,padding扩增内部尺寸,border增加边框厚度,margin创建外部间距;默认width仅含content,而box-sizing:border-box可使width包含padding和border,避免溢出。
-
模板字面量(``)是标签模板的必要前提,因其能将静态字符串片段与动态插值参数分离传递给标签函数,而普通引号字符串无法提供该结构。
-
影子DOM是WebComponents标准的一部分,通过attachShadow方法为元素挂载独立DOM树,实现样式与结构的隔离;其内部CSS仅作用于影子根内,支持slot内容分发和::part()样式定制;常与自定义元素结合,用于构建高封装性的可复用组件,适用于设计系统、微前端等需避免样式冲突的场景。
-
background-repeat控制背景图重复方式,background-position设置其位置;通过no-repeat、center等值可实现不重复居中显示,常用于美化页面与响应式设计,两者结合简写更高效。
-
CSS自定义属性通过--定义变量,配合var()函数实现值复用,提升样式维护性。示例::root{--primary-color:#007bff;},.button{background-color:var(--primary-color);},支持默认值、作用域与JavaScript动态修改,适用于主题切换与响应式设计,现代浏览器广泛支持。
-
在HTML中实现段落首行空两格可以使用四种方法:1.CSS的text-indent属性(p{text-indent:2em;}),简洁通用但只影响首行;2.HTML的非断行空格(<p> 内容</p>),无需CSS但代码冗长;3.CSS的padding-left属性(p{padding-left:2em;}),可控制整个段落但可能影响布局;4.CSS的:first-line伪元素(p:first-line{text-indent:2em;}),精