CSS fixed

本文介绍了在单页面应用(SPA)中实现固定头部和底部的CSS样式技巧。通过设置position为fixed,并指定top和bottom属性,可以使元素始终保持在屏幕顶部或底部。此方法适用于创建导航栏和其他布局组件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在SPA中经常需要固定底部和顶部
参考
http://bradfrost.com/blog/mobile/fixed-position/
可以得到写法

固定顶部

   .header {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
   }

固定底部

  .footer {
    position: fixed;
    right: 0;
    bottom: 0;
    width: 100%;
  }
### CSS `fixed` 定位的工作原理 在 CSS 中,当元素被设置为 `position: fixed` 时,该元素会被移除标准文档流,并相对于视口(即浏览器窗口)进行定位[^1]。这意味着即使页面滚动,`fixed` 元素的位置也不会改变。 #### 参照对象 对于设置了 `position: fixed` 的元素来说,其参照的对象是整个浏览器的视窗而非任何其他 HTML 元素或容器[^5]。因此,在大多数情况下,可以认为 `fixed` 元素总是基于屏幕可视区域来决定自己的位置。 #### 影响因素 影响 `fixed` 元素最终显示位置的主要有两方面: - **包含块 (containing block)**:尽管 `fixed` 元素不依赖于父级或其他祖先元素作为参考点,但是仍然存在一个抽象的概念叫做 "包含块", 这个概念决定了应用到此元素上的宽度、高度以及其他一些布局行为[^3]。 - **偏移量属性 (`left`, `right`, `top`, `bottom`)**:通过这些属性可以直接控制 `fixed` 元素距离视窗四边的距离,从而精确定义它的放置位置。 #### 特殊情况说明 值得注意的是,并不是所有的场景下 `fixed` 都会严格遵循上述规则。例如,在某些特定条件下,如使用了特殊的滤镜效果或者其他复杂的层叠上下文环境里,可能会观察到异常现象,这可能是因为渲染引擎内部机制导致的行为偏差[^4]。 ```html <div class="father"> <div class="child"></div> </div> <style> .father { width: 300px; height: 300px; background-color: pink; } .child { width: 100px; height: 100px; background-color: orange; position: fixed; bottom: 0; } </style> ``` 在这个例子中,`.child` 被设定为了 `position: fixed` 并且底部贴合视窗底端。无论 `.father` 或者 页面其余部分如何变化,只要没有额外样式干扰,`.child` 将始终保持在屏幕最下方不变。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值