父级fixed_position: fixed在当前视图基于父元素定位

本文探讨了如何在CSS中实现一个子元素在父元素旁固定定位的需求,当滚动时仍然保持相对于父元素的位置。由于fixed定位通常基于浏览器窗口,作者通过设置absolute定位和巧妙使用margin,实现了子元素相对于父元素的固定效果。
摘要由CSDN通过智能技术生成

今天在工作中遇到这样一个需求,需求如下:

子元素要固定在父元素旁边,当下滑到一定位置的时候,子元素固定在浏览器窗口顶部。

试了一下,fixed只能基于浏览器窗口定位,并不能基于父元素定位,这样满足不了我的需求。

CSS 有三种基本的定位机制:普通流、浮动和绝对定位。

除非专门指定,否则所有框都在普通流中定位。也就是说,普通流中的元素的位置由元素在 (X)HTML 中的位置决定。

块级框从上到下一个接一个地排列,框之间的垂直距离是由框的垂直外边距计算出来。

行内框在一行中水平布置。可以使用水平内边距、边框和外边距调整它们的间距。但是,垂直内边距、边框和外边距不影响行内框的高度。由一行形成的水平框称为行框(Line Box),行框的高度总是足以容纳它包含的所有行内框。不过,设置行高可以增加这个框的高度。--W3C

首先回顾一下定位:

CSS Positioning(定位)

Static 定位

HTML元素的默认值,即没有定位,元素出现在正常的流中。

静态定位的元素不会受到top, bottom, left, right影响。

Fixed 定位

元素的位置相对于浏览器窗口是固定位置。

即使窗口是滚动的它也不会移动

Relative 定位

相对定位元素的定位是相对其正常位置。

可以移动的相对定位元素的内容和相互重叠的元素,它原本所占的空间不会改变。

Absolute 定位

绝对定位的元素的位置相对于最近的已定位父元素,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值