css五种定位总结

在 CSS 中,定位(Positioning)主要有五种模式,每种模式的行为和特点不同,以下是 static、relative、absolute、fixed 和 sticky 五种定位方式的对比总结:

1. static(默认定位)

  • 特性 : static 是元素的默认定位方式。元素会按照正常的文档流进行排列。
  • 影响 : 不受 top、bottom、left、right 属性的影响。
  • 使用场景: 默认状态下不需要特殊定位时使用。

2. relative(相对定位)

  • 特性: 相对自身原本位置进行定位。
  • 影响 : 元素仍然占据原本文档流中的位置,但通过 top、bottom、left、right 移动其可视位置。
  • 使用场景: 需要稍微调整元素位置,同时保留其在文档流中的位置。

3. absolute(绝对定位)

  • 特性 : 依据最近的非 static 祖先元素(如果没有则相对于 body)进行定位。
  • 影响 : 元素从文档流中移除,不再占据原本的位置。可以通过 top、bottom、left、right 进行精确定位。
  • 使用场景: 需要完全脱离文档流,并相对其容器进行精确定位时使用。

4. fixed(固定定位)

  • 特性: 相对于浏览器窗口(视口)进行定位。
  • 影响 : 元素脱离文档流,并且在页面滚动时位置保持不变。可以通过 top、bottom、left、right 进行定位。
  • 使用场景: 固定在屏幕某一位置的导航栏或按钮等场景。

5. sticky(粘性定位)

  • 特性 : 根据滚动位置切换 relative 和 fixed 定位的混合模式。元素在视口范围内时表现为 relative 定位,滚动超出阈值时转换为 fixed 定位。
  • 影响 : 可以通过 top、bottom、left、right 进行定位,元素在特定的滚动位置"粘住"。
  • 使用场景: 需要在页面滚动时让元素保持可见一段时间,常用于表头、侧边栏等。

总结对比

相关推荐
定栓4 分钟前
Webpack迁到Vite第五节:第三方库兼容
前端·webpack·node.js
NGINX开源社区12 分钟前
与我们交流:NGINX Gateway Fabric 与 NGINX Ingress Controller 社区会议
java·服务器·前端
ShineWinsu42 分钟前
对于CSS:弹性布局(Flexbox)的解析
前端·css·面试·浏览器·web·网页·弹性布局
山雀~1 小时前
第5次百日救赎计划
前端
xiaogai_gai1 小时前
销售出库单同步实战:旺店通→金蝶云星空的单一策略深度拆解
大数据·前端·数据库
const_qiu1 小时前
第二章 2.6:初始化 NestJS 服务端 —— TypeScript 后端框架体验
前端·javascript·typescript
云老大-阿里云国际站代理商2 小时前
华为云国际站渠道代理商:CSS查询很慢但CPU不高?磁盘I/O、JVM与分片问题怎么排查
css·jvm·华为云
console.log('npc')2 小时前
[特殊字符] AI Agent 工作台前端实战教程 · 新手入门指南
前端·人工智能
gCode Teacher 格码致知2 小时前
前端教学2:ul标签的应用场合与经典案例
前端