CSS 的 position 属性

CSS 的 position 属性用于指定一个元素在文档中的定位方式。它有以下几个取值:

  1. static (默认值)

    • 元素按照正常的文档流进行定位,不受 top、right、bottom 和 left 属性的影响。
    • 特点:不会被脱离文档流,其他元素会根据它的位置进行排布。
  2. relative

    • 元素相对于其正常位置进行偏移。使用 top、right、bottom 和 left 属性可以调整元素相对于其默认位置的偏移。
    • 特点:元素仍然占据原来的空间,但可以相对于原始位置进行移动。
  3. absolute

    • 元素相对于最近的已定位(非 static)祖先元素进行定位。如果祖先元素中没有已定位的元素,则相对于初始包含块(通常是浏览器窗口)进行定位。
    • 特点:元素脱离文档流,不再占据原来的空间,其他元素会按照正常的文档流重新排布。
  4. fixed

    • 元素相对于浏览器窗口(视口)进行定位,即使页面滚动,元素的位置也不会发生变化。
    • 特点:元素脱离文档流,始终固定在浏览器窗口的某个位置。
  5. sticky

    • 元素在特定条件下表现为相对定位(relative),在滚动到一定位置后变为固定定位(fixed)。可以通过 top、right、bottom 和 left 属性来指定粘性位置。
    • 特点:元素在滚动时会"粘"在某个位置,一旦滚动超出设定值,它就会固定在设定的边界处。

例子

css 复制代码
/* static: 默认值,不影响布局 */
.element-static {
    position: static;
}

/* relative: 相对原始位置进行偏移 */
.element-relative {
    position: relative;
    top: 10px;
    left: 20px;
}

/* absolute: 相对最近的已定位祖先元素定位 */
.element-absolute {
    position: absolute;
    top: 50px;
    left: 50px;
}

/* fixed: 固定在视口中,不受滚动影响 */
.element-fixed {
    position: fixed;
    bottom: 10px;
    right: 10px;
}

/* sticky: 在滚动达到 20px 后"粘"在顶部 */
.element-sticky {
    position: sticky;
    top: 20px;
}

使用不同的 position 值可以实现多种布局效果,根据需要选择合适的定位方式。

相关推荐
迅猛龙办公室10 小时前
Python输出当前计算机的系统日期和时间
开发语言·前端·python
小狼1545410 小时前
浏览器扩展脚本为什么有时候不生效:注入时机、iframe 和单页路由,多多开票助手
前端·chrome
じòぴé南冸じょうげん11 小时前
油猴脚本突然发现变成灰色了,无法使用?页面不生效?刷新页面没反应?
前端
Csvn12 小时前
组合式 API(Composition API)
前端
火柴就是我14 小时前
Android 打包报错 25.0.3
android·前端
BD_Marathon14 小时前
消息对象中字段的说明
java·前端·python
八荒启·交互动画14 小时前
Web特效025—用 Canvas 2D 做Web特效的定义与边界:这支画笔能做到哪一步
前端·webgl·网页特效·八荒启-交互动画·八荒启
Ai-_Man14 小时前
您您这可以把Dola的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。用AI导出鸭,答案是可以的
开发语言·前端·人工智能·小程序
DsirNg14 小时前
断点不该认识设备:组件布局的容器状态治理
css·前端工程化·组件化·响应式布局·css grid·设计系统·container queries
excel14 小时前
Nuxt 中使用 useHead 优化 SEO 与 GEO
前端