前端

一、Flexbox与Grid布局

Flexbox(弹性盒子)适用于一维布局,通过`display: flex`激活,支持`justify-content`、`align-items`等属性实现灵活排列。Grid(网格布局)则面向二维布局,使用`display: grid`定义容器,配合`grid-template-columns/rows`构建复杂布局体系。两种布局方式互补,Flexbox适合组件级布局,Grid更擅长页面级结构。

二、响应式设计进阶

媒体查询(`@media`)仍是响应式核心,但现代CSS新增特性:

`clamp()`函数实现动态尺寸:`width: clamp(300px, 50%, 800px)`

CSS容器查询(实验性):通过`@container`基于父容器尺寸响应

视口单位(vw/vh/vmin/vmax)配合calc()实现比例适配

三、过渡与动画

使用`transition`创建平滑过渡:

```css

.button {

  transition: all 0.3s ease-in-out;

}

```

关键帧动画:

```css

@keyframes slide {

  from { transform: translateX(-100%); }

  to { transform: translateX(0); }

}

.element { animation: slide 0.5s forwards; }

```

四、CSS变量与预处理

CSS自定义属性(变量):

```css

:root {

  --primary-color: #2196F3;

}

.element {

  color: var(--primary-color);

}

```

Sass/Less等预处理器提供嵌套语法、混合宏等功能,提升代码可维护性。

五、性能优化

减少重排:优先使用transform/opacity

使用`will-change`预声明变化属性

避免通配符选择器(*)

按需加载CSS(@import影响性能)

六、结语

掌握中阶CSS需理解现代布局方案、响应式策略及性能优化技巧。建议通过实践项目巩固知识,同时关注CSS新特性发展(如层叠层@layer、作用域样式等)。进阶者可探索CSS-in-JS方案或框架集成。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容