如何在dom节点上使用fixed定位?实现基于父节点而不是浏览器的滚动定位?一眼看懂,简单明了。

浏览器端实时声明核查器:基于Perplexity API的可信溯源方案 事实核查是数字时代的核心信息素养能力,其本质是通过权威信源比对、时效性验证与证据等级评估,完成对网络声明的可信度判定。传统搜索引擎依赖人工筛选,效率低且易受偏见干扰;而专业级核查工具需兼顾实时响应、本地隐私保护与结果可解释性。Perplexity Search API凭借其结构化引用返回、自然语言查询理解及高置信度评分机制,成为构建轻量级浏览器端核查系统的关键技术支点。本文聚焦‘浏览器端实时核查’这一落地形态,详解如何绕过CORS限制直连API、在Web Worker中安全执行查询增强、基于域名白名单与sc 阅读详情

一、想要实现的功能场景

想在一个node节点中实现滚动,但是我的文本要基于这个元素在滚动的时候浮起,类似于如下的功能
在这里插入图片描述
那么我们首先想到的必然是fixed固定定位,但是我们不得不考虑的一个问题就是,fixed是基于窗口来进行定位,无法做到类似于父相子绝的定位方式,因为fixed定位的就不是父dom节点,所以我们暂时先不用去考虑使用fixed方式定位。

二、父相子绝方式实现dom节点内元素滚动定位

其实我们如果不考虑使用fixed方式去实现dom内元素的滚动定位的话,其实还是很好实现这个功能的,只是走进了一个误区,有没有什么好的css属性可以实现此功能,然后不自觉的就钻进了牛角尖。
实现步骤:

1、给需要滚动的元素包裹一个父元素,然后定义为指定的宽高
2、层级为 <父><滚动元素></滚动元素><Fixed元素></Fixed元素></父>
3、采用父相子绝的方式将Fixed元素进行浮起,然后定位,给滚动元素设置滚动互不干扰,功能实现

2.1、父相子绝代码

  <!-- 父相子绝方式,构建一个新的父元素,父元素高度为本身的滚动元素高度,并且设置相对定位 -->
  <div style='position:relative;height:300px;'>
    <!-- 本身需要固定的父元素,现在为滚动元素,原有高度为300px,调整为100%高度;并设定overflow滚动 -->
    <div style="height:100%;overflow:auto;">
      <!-- 内容 -->
      <div style="height:800px;background:green;">我是测试数据</div>
    </div>
    <!-- fixed元素设定absolute,高度是基于爷爷元素定位,所以滚动元素其实影响不到当前元素的定位 -->
    <div style='position:absolute;width: 100%;bottom:50px;height: 20px;background:red;'>需要fixed的文本内容</div>
  </div>

2.2、实现效果

在这里插入图片描述

三、iframe中使用fixed方式实现

就像标题说的,如果我就是想用fixed的方式实现此功能,那么就用iframe标签去加载这个dom节点,这个dom节点也就被分割为了一个窗口,fixed是基于窗口,那么我们就可以直接使用fixed定位实现子元素的定位

3.1、fixed代码

  <!-- 采用iframe方式,然后去设定高度等,直接子元素设定fixed既是根据iframe进行定位,而不是根据窗口定位 -->
  <iframe style='height:300px;padding: 0;margin-top: 200px;' src="./iframe.html" frameborder="0">
  </iframe>

  <!--iframe.html-->
  <!DOCTYPE html>
	<html lang="en">
	
	<head>
	  <meta charset="UTF-8">
	  <meta http-equiv="X-UA-Compatible" content="IE=edge">
	  <meta name="viewport" content="width=device-width, initial-scale=1.0">
	  <title>Document</title>
	  <style>
	    * {
	      margin: 0;
	      padding: 0;
	    }
	  </style>
	</head>
	
	<body>
	  <div style='overflow:auto;height:300px;background:blue;'>
	    <div style='position:fixed;top:0;background-color: pink;width: 100%;height: 20px;'>ceshi</div>
	    <div style='height:800px;margin-top:20px;'>可是我偏偏就是不想要转弯</div>
	  </div>
	</body>
	
	</html>

3.2、实现效果

在这里插入图片描述
iframe如何在vue中使用,可以参考下面两篇文章

vue使用iframe方式
iframe通信方式

四、总结

其实另外一种实现方式,我们也可以用js去计算节点被卷去的高度,滚动的时候不停的位移,然后将top进行一个变更,但是此种方法就没有必要了,包括第二种iframe嵌套的方式,其实如果就是想因为一个dom元素使用fixed去构建一个iframe窗口的话是没有必要的,所以我们还是推荐使用第一种方式。

H5页面一键分层实战:用AI Skill提取图层树与设计资源 前端重构或设计稿二次修改时,常遇到只有线上H5页面而没有源文件的窘境。面对活动页改版、视觉资源抽取等需求,传统截图抠图效率极低。本质上,浏览器只提供渲染结果,而视觉分层信息被压平在DOM树中。通过解析DOM结构、样式与几何信息,能够将页面重新组织为可编辑的图层树,并导出图片资源和标注图,这就是H5页面分层的核心原理。借助AI Skill机制,可将这一流程封装为可复用的自动化命令,在视觉还原与工程化协作中发挥巨大价值。从环境准备、脚本实现到排查落地,完整链路均可支撑团队快速搭建一键分层工作台。 阅读详情

相关推荐

前端面试题汇总

总结了一下之前面试遇到的问题,方便自己也方便他人

annier_11的博客 150

position:fixed实现相对于父级定位

position:fixed

callmeCassie的博客 1万+

中科闻歌前端面试题及参考答案

call、apply、bind 无法修改箭头函数内部 this,就算传入参数,绑定 this 的参数会直接被忽略。

大模型大数据攻城狮的专栏 173

fixed定位相对于父元素

fixed定位

jjxyh的博客 5016

SRAM:SRAM入门指南与工作原理

SRAM(Static Random Access Memory),即静态随机存取存储器,是一种能够读取和写入数据的内存(RAM)。它使用由晶体管组成的触发器来存储数据,只要有电源供应,数据就可以稳定地保存。与动态随机存取存储器(DRAM)不同,SRAM 不需要周期性地刷新来保持数据。

weixin_42896509的博客 1万+

快速理解STLink引脚图中复位引脚作用

深入讲解STLink引脚图中复位引脚的实际用途,帮助开发者快速掌握其在调试与下载过程中的关键作用,结合stlink引脚图理解更高效。

weixin_32324637的博客 1326

CSS解决position:fixed基于父元素定位而不是浏览器窗口

众所周知fixed是基于浏览器窗口定位,但是今天遇到个问题,发现fixed并不一定是这样 有一个例外会使fixed是基于祖先元素定位。 当元素祖先的 transform 属性非 none 时,定位容器由视口改为该祖先。 <div class="container" style="transform:rotate(360deg);"> <div> <div class="box" style="position:fixed;"></div&

DDD4V的博客 1万+

CarPlay盒子选购避坑指南:为什么你的车机破解了却用不了?从USB设备ID说起

本文深入解析CarPlay盒子硬件兼容性问题,从USB设备ID匹配到车机适配逻辑,揭示破解成功却无法使用的根本原因。通过分析USB设备识别的核心要素和逆向工程usb_device_manager.xml文件,提供三种主流解决方案对比,并强调操作中的硬件保护机制,帮助车主避免常见陷阱。

weixin_30706691的博客 473

position: fixed如何相对父元素定位

在项目中遇到一个问题,项目中有一个弹框,弹框中有一个anchor组件,弹框中的内容可以滚动,而anchor组件需要相对于弹框保持固定。我们知道,position: fixed是相对于浏览器窗口进行定位,而弹框宽度是固定的,浏览器窗口的宽度则是不确定的,所以相对于浏览器窗口定位肯定不行。如何让anchor组件相对于弹框进行固定定位呢? 查了下资料发现,虽然position:fixed是对于浏览器窗口定位的,但是只要不设置fixed元素的top,bottom,left,right,此时该元素就是相对于父元素进

weixin_43487782的博客 9958

国产FPGA逆袭!深度评测复旦微RFVU3P5G核心板在相控阵雷达中的表现

本文深度评测了复旦微RFVU3P5G核心板在相控阵雷达中的实战表现。该核心板凭借射频直采架构、高采样率ADC/DAC及丰富的DSP资源,在多通道同步精度、动态范围及系统稳定性等关键指标上表现出色,展现了国产FPGA在高端雷达应用中的硬核实力与供应链自主价值。

b0c1d2的博客 724

量化交易如何利用涨停板策略收割散户

量化交易通过算法筛选特定特征的股票,在早盘建立底仓后,利用大单拉升制造抢筹假象,吸引散户跟风买入。这种策略利用了散户的认知偏差,如锚定效应和从众心理,导致次日低开闷杀。从技术实现来看,量化策略通过控制买入量、隐藏真实意图等手段,精准执行隔日砸策略。对于短线交易者而言,理解量化资金的运作逻辑和识别危险涨停板的特征至关重要,这包括观察封板时间、盘口挂单、量价关系等多维度数据。在算法主导的市场中,散户需要升级交易工具和策略,从预测走势转向应对走势,才能避免成为量化策略的牺牲品。

weixin_33046983的博客 288

html position:fixed 定位问题

html position:fixed 定位问题 问题:在前端页面布局中有时我们一些坑爹的问题:比如position:fixed定位的问题,正常情况下fixed相对于浏览器窗口进行定位,正常情况下没有问题,当使用transform:translate(0px,-5px);属性后问题就出现了 首先我们了解下position这个属性的使用 值 描述 absolute 生成绝对定位的元素...

张宇的博客 1万+

保姆级教程:在K230开发板上为张大头步进电机实现位置、速度、回零全功能控制

本文提供了一份详细的K230开发板与张大头步进电机的控制教程,涵盖硬件连接、协议解析、模块化代码实现及实战案例。通过位置、速度和回零功能的全面讲解,帮助开发者快速掌握步进电机的高级控制技术,适用于自动化、机器人等应用场景。

weixin_42629671的博客 710

Selenium元素定位实战:XPath、CSS Selector与滚动可见性全解

在Web自动化测试中,元素定位是脚本稳定运行的基石。无论是基于XPath的复杂层级解析,还是CSS Selector的高效属性匹配,定位策略的选择直接影响测试用例的可维护性与执行效率。随着现代前端框架的普及,动态ID、异步渲染、iframe嵌套以及横向滚动区域成为自动化脚本的常见障碍。掌握相对路径、XPath轴、scrollIntoView等核心技术,能够有效解决元素不可见、被遮挡或加载延迟导致的交互失败问题。本文从定位策略设计出发,系统梳理八种定位方式的适用场景与坑点,并深入讲解页面左右滑动、滚动可见性处

weixin_28836875的博客 222

AI智算-K8s+vLLM & Ray:DeepSeek-r1 671B 满血版分布式推理部署实践

自从上次发布 【AI-智算】K8s+SGLang实战:DeepSeek-r1:671b满血版多机多卡私有化部署全攻略] 文章后,本次将演示另一个主流推理引擎工具——vLLM,结合K8s、LWS、Ray、Volcano等技术栈,部署DeepSeek-r1 671b 满血版分布式推理集群,并对比其与SGLang推理引擎的性能表现。

Kason_iWiki 1825

高效批量转换Java接口为MCP服务:降低重复劳动的实战指南

高效批量转换Java接口为MCP服务:降低重复劳动的实战指南

专注于编程、AI、人工智能等多个领域内容研究和分析 723

多模态自主AI代理:基于树搜索的网页交互智能架构

网页自动化正从静态脚本向动态决策演进,核心在于让AI具备类人的状态感知、路径规划与错误恢复能力。多模态指同步融合DOM结构、视觉布局、文本语义与交互反馈;自主性体现为无需预设流程即可动态生成动作序列;而树搜索则提供可解释、可回溯、可剪枝的决策骨架。该技术显著提升RPA在反爬强、UI多变场景下的鲁棒性,支撑金融比价、SaaS配置、高可靠数据采集等关键任务,是突破提示词工程瓶颈与页面微调即失效困局的工程化路径。

weixin_30788239的博客 563

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

HTML/CSS Layout Fundamentals: Building Your First Interactive Web Pages with the Easy-Vibe Project

> **导读**:本文以 Easy-Vibe 开源教程中的前端基础篇章为主体,系统讲解 HTML、CSS 与 JavaScript 这三大基石——它们如何把一张"电子海报"变成能点击、能输入、能实时响应的网页应用。读完本文,你将掌握 HTML 语义标签与页面骨架、CSS 选择器/盒模型/Flexbox 布局与 SCSS 预处理、JavaScript 的 DOM 操作与现代语法(ES6+、TypeS

gitblog_00544的博客 247

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

事件委托详解:从冒泡原理到性能优化实战

在DOM编程中,事件处理是前端开发的核心基础能力之一。当页面元素数量增多或列表动态渲染时,逐一绑定监听器不仅代码冗余,还会带来内存占用上升、事件重复触发等性能隐患。事件委托正是解决这类问题的经典方案:它依托事件冒泡机制,将子元素的事件监听统一挂载到父容器上,通过事件对象的target与closest方法精准定位真实触发元素,实现“一处监听、全局响应”。这一技术不仅能大幅降低监听器数量、规避动态元素的内存泄漏风险,还能让列表、表格、菜单等高频交互场景的代码结构更清晰。从原生JavaScript的addEven

weixin_31130435的博客 274

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

父级fixed_position:fixed相对父级元素定位而不是浏览器

position:fixed默认是相对浏览器定位的原理:fixed定位相对父级容器定位,不添加:top,bottom,left,right样式,通过margin定位HTML布局:JS Binfixed定位相对父级容器定位,不添加:top,bottom,left,right样式,通过margin定位abcdefghijklmnopCSS样式:.father {width:300px;height:3...

weixin_39631755的博客 2255

position:fixed 相对父元素定位

position:fixed是对于浏览器窗口定位的,要实现相当于父元素定位,可以这样: 不设置fixed元素的top,bottom,left,right,只设置margin来实现。 这种方法本质上fixed元素还是相当于窗口定位的,实现效果上是相对于父元素定位。 此外,position:fixed元素会受到父元素的影响,而出现不能以窗口进行定位: 1. 因为fixed元素并不总是...

weixin_30364147的博客 1316

元素根据父级固定定位效果

css中的:fixed一般用来设置元素的固定定位,它的定位方式是依据窗口固定某个位置,在滚动滚动条的时候会一直固定在某个位置。 在开发过程中我们经常会遇到这样的效果:某个元素有滚动条,它的一个子元素需要固定在这个元素的可视区域的某个位置,不随着滚动条的拖动跟随移动。要实现这样的效果最先想到的就是使用position:fixed但是它并不能实现我们上边说的这种效果,经过反复实验总结除了两种实现此效果的方法: 第一种:使用position:absolute;来实现具体思路 首先我们要知道position:abs

qwguo 2093

关于position:fixed定位的位置不对的问题(即没有按照浏览器的窗口进行定位)

关于position:fixed定位的位置不对的问题(即没有按照浏览器的窗口进行定位)

brilliantSt的博客 2770

fixed相对于父元素定位

position:fixed;定位,只要不同时写top、left和top、right值,他就会默认居于父级进行定位。只是位置会偏左。 手动调整就好。 .div{ position:fixed; top:80px; margin-left:60px; width:340px; } top: 相对父元素高度 弹窗内有悬浮提示,内容高度固定(有滚动条) 如下: ...

LPLIFE的博客 4718

CSS技巧:使用定位设置盒子的高度

{ position:fixed; top:0; left:0; right:0; bottom:0; } 这样设置后子盒子的大小就等于父盒子大小

m0_52364694的博客 546

html中fixed属性,CSSposition属性中:fixed使用详解

是结合top、bottom、left和right这4个属性一起使用的,其中“position:fixed;”使得元素成为固定定位元素,接着使用top、bottom、left和right这4个属性来设置元素相对浏览器的位置。当元素的position属性设置为fixed时,这个元素就被固定了,被固定的元素不会随着滚动条的拖动而改变位置。在视野中,固定定位的元素的位置是不会改变的。fixed固定定位和absolute绝对定位比较类似,它们都能够让元素产生位移,并且脱离文档流。/*设置元素为固定定位*/

m0_70664757的博客 4591
上一篇: git 拉取、推送 解决自动变基问题
下一篇: css 设置滚动条不挤压宽高
归来巨星
归来巨星 新星创作者: 前端开发技术领域 新星创作者: 前端开发技术领域
博客等级 码龄7年 5391粉丝 95原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

归来巨星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值