【css】如何实现自定义滚动悬浮置顶、固定表头

说到固定表头或者滚动置顶,我们需要认识css的两个api的2个属性:

position: sticky;

position: sticky; 是 CSS 中的一种定位方式。当应用于元素时,该元素在滚动时会固定在父容器的指定位置,直到滚动到达特定的位置或条件满足后,才会取消固定定位。

元素的 position 属性需设置为 sticky,同时需要指定 top、right、bottom 或 left 中至少一个值,以确定元素固定的位置。当滚动条滚动到元素的固定位置时,元素会固定在该位置不动,直到离开固定位置

这种定位方式常用于导航栏或侧边栏等需要在页面滚动时保持可见的元素。它比较灵活,可以根据需要设定元素在不同位置的固定状态。

overflow-y: visible;

overflow-y: visible; 是 CSS 中用于设置元素的垂直方向上的溢出内容的处理方式。当应用于元素时,如果元素的内容超出了容器的高度,将会显示溢出的内容,不会进行任何剪裁或滚动PS:注意这个非常非常非常重要,这个特点可以允许我们在设置置顶效果时,保留元素的高度,配合position: sticky;top:0;才能正确的计算容器内的滚动高度。

如下图所示:

1、没有设置overflow: visible;的效果:
在这里插入图片描述
2、设置了overflow: visible;的效果:
在这里插入图片描述

如果发现滚动时有间隙,那么需要调整部分dom元素的padding-bottom或者padding-top值,也可以调整position: sticky;top:0;中top的值。

如下图所示:
在这里插入图片描述

这意味着,即使内容超出容器的高度,也不会显示滚动条或剪裁溢出的部分。内容会完全显示,可能会影响容器的布局。

-------------------------------分割线-------------------------------

overflow相对应的属性值还有:

overflow-y: hidden;:溢出的内容将被隐藏,不显示。

overflow-y: scroll;:如果内容超出容器的高度,将显示滚动条,用户可以滚动查看超出的内容。

overflow-y: auto;:内容超出容器高度时,会根据需要设置是否显示滚动条,如果内容没有超出容器高度则不显示滚动条。

overflow: overlay;:当应用 overflow: overlay; 到一个元素时,如果内容超出容器的尺寸,则会显示一个滚动条。与 scroll 不同的是,滚动条是以浮动的方式显示在内容上方,不会占用容器的空间。这意味着即使出现滚动条,内容也不会被裁剪。同时,如果内容没有超出容器,则不会显示滚动条。

注意:这些属性主要针对垂直方向上的内容溢出处理,如果希望同时设置水平和垂直方向的溢出处理,可以使用 overflow 属性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/137615.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

APP产品经理岗位的具体内容(合集)

APP产品经理岗位的具体内容1 1、负责项目产品团队的管理工作,对项目产品团队考核目标负责; 2、全面负责“工务园”所有产品,全方位负责其生命周期管理; 3、按照产品管理相关的计划和规范,对产品版本的更新及发布负责,完善产品的…

书剑宠物疫苗接种管理软件操作教程

【软件简介】 书剑宠物疫苗接种管理软件是一款宠物疫苗接种管理的工具,适合宠物诊所使用。具有动物主人建档、宠物疫苗接种登记管理、每日提醒、打印疫苗接种通知卡、自定义短信提醒模板等完善的功能。 另外本软件的特色是同时具有手机网页版功能,手机…

警惕!多本SCI/SSCI被剔除,9月SCI/SSCI期刊目录已更新~(附下载)

【SciencePub学术】 2023年9月20日,科睿唯安更新了Web of Science核心期刊目录。 继上次SCI期刊目录和SSCI期刊目录更新之后,本次9月更新共有9本期刊发生变动: • SCIE:有3本期刊不再被SCIE期刊目录收录(Editorial De-listing/Pr…

VScode的注释和标题,标签,img的src属性(如何网页上插入图片)(Mac如何开启js控制台)(如何免费复制网页中的文字)

一、注释 <!--这是注释-->&#xff0c;在这个<!--内容-->里面的是注释&#xff0c;内容就是你要填写的注释。 在windows上查看&#xff0c;你是使用F12&#xff0c;但是mac上(我也不清楚为什么f12不好使&#xff0c;这时候就要按照下面的步骤调出这个界面 看这个高…

【校招VIP】前端JS之深拷贝和浅拷贝

考点介绍 js中的浅拷贝和深拷贝&#xff0c;只是针对复杂数据类型(Objcet&#xff0c;Array)的复制问题。简单来讲浅拷贝和深拷贝都可以实现在原有对象的基础上再生成一份的作用。但是根据新生成的对象能否影响到原对象可以分为浅拷贝和深拷贝。 前端JS之深拷贝和浅拷贝-相关题…

聊聊Spring的Aware接口

文章目录 0.前言1.什么是Aware接口2.Aware接口的设计目的3.详解3.1. ApplicationContextAware我们举个例子来说明 3.2. BeanFactoryAware3.3. BeanNameAware3.4. ServletContextAware3.5. MessageSourceAware3.6. ResourceLoaderAware 4.参考文档 0.前言 背景&#xff1a; 最近…

Spring Boot魔法:简化Java应用的开发与部署

文章目录 什么是Spring Boot&#xff1f;1. 自动配置&#xff08;Auto-Configuration&#xff09;2. 独立运行&#xff08;Standalone&#xff09;3. 生产就绪&#xff08;Production Ready&#xff09;4. 大量的起步依赖&#xff08;Starter Dependencies&#xff09; Spring …

【SpringMVC】JSR 303与interceptor拦截器快速入门

目录 一、JSR303 1、什么是JSR 303&#xff1f; 2、为什么要使用JSR 303&#xff1f; 3、JSR 303常用注解 3.1、常用的JSR 303注解 3.2、Validated与Valid区别 3.2.1、Validated 3.2.2、Valid 3.2.3、区别 4、使用案例 4.1、导入依赖 4.2、配置校验规则 4.3、编写…

大模型Tuning分类

类型总结 微调&#xff08;Fine-tunning&#xff09; 语言模型的参数需要一起参与梯度更新 轻量微调&#xff08;lightweight fine-tunning&#xff09; 冻结了大部分预训练参数&#xff0c;仅添加任务层&#xff0c;语言模型层参数不变 适配器微调 &#xff08;Adapter-t…

数据研发“新人”如何快速落地?

作者&#xff1a;肖迪(墨诩) 一、前言 这个季度主推安全月构筑&夯实稳定性底盘&#xff0c;就组织了组里的同学对核心业务链路进行了稳定性的摸排。在摸排过程中&#xff0c;不断有个声音在问你摸排出来的问题就是全部问题么&#xff1f;你加的监控加全了么&#xff1f;你…

进程同步与互斥

目录 进程同步与互斥&#xff08;1&#xff09; 第一节、进程间相互作用 一、相关进程和无关进程 二、与时间有关的错误 第二节、进程同步与互斥 一、进程的同步 二、进程的互斥 三、临界区 进程同步与互斥&#xff08;2&#xff09; 三、信号量与P、V操作的物理含义…

Tomcat 下部署 jFinal

1、检查web.xml 配置&#xff0c;在 tomcat 下部署需要检查 web.xml 是否存在&#xff0c;并且要确保配置正确&#xff0c;配置格式如下。 <?xml version"1.0" encoding"UTF-8"?> <web-app xmlns:xsi"http://www.w3.org/2001/XMLSchema-i…

使用命令行(CMD)编译单Java文件

1.安装JDK JDK官网&#xff1a;https://www.oracle.com/java/technologies/downloads/ 选 Windows -> x64 MSI Instaler或者x64 Installer 安装成功后。 2.配置环境变量 按下Win键&#xff0c;搜索环境变量 添加JAVA_HOME系统环境变量&#xff0c;要指定类似这样的路径(…

Dubbo学习(一)——dubbo学习背景

文章目录 前言分布式基础理论什么是分布式系统发展演变ORMMVCRPCSOA RPC(远程调用)什么是RPCRPC工作原理 为什么RPC要用到DubboDubbo的优势高性能可扩展性高可靠性监控和管理 使用示例总结 前言 分布式基础理论 什么是分布式系统 分布式系统是若干独立计算机的集合&#xff…

月木学途开发 1.后台用户模块

概述 权限控制采用springsecurity 数据库设计 用户表 DROP TABLE IF EXISTS admin; CREATE TABLE admin (aid int(32) NOT NULL AUTO_INCREMENT,email varchar(50) DEFAULT NULL,username varchar(50) DEFAULT NULL,password varchar(255) DEFAULT NULL,phoneNum varchar(2…

在Ubuntu 18.04上支持C++17的std::filesystem的方法

在Ubuntu 18.04上通过命令sudo apt install gcc g安装的gcc/g版本为7.5&#xff0c;此版本并不直接支持filesystem&#xff0c;如下图所示&#xff1a; Ubuntu 18.04上的g 7.5支持experimental的filesystem,即std::experimental::filesystem&#xff0c;若想使Ubuntu 18.04支持…

软件设计原则扩展

一、引言 经典的软件设计7大原则 开闭原则&#xff08;Open Close Principle, OCP&#xff09; 依赖倒置原则&#xff08;Dependence Inversion Principle, DIP&#xff09; 单一职责原则&#xff08;Simple Responsibility Principle, SRP&#xff09; 接口隔离原则&#xf…

OPENCV实现DNN图像分类

使用步骤1 使用步骤2 使用步骤3 使用步骤4 使用步骤5 使用步骤6 完整代码如下: import numpy as np

Git --- 基础介绍

Git --- 基础介绍 git 是什么git --- 工作区, 暂存区, 资源库git --- 文件状态git --- branch 和 HEADgit --- 一次正常的git提交流程 git 是什么 Git是一款分布式源代码管理工具(版本控制工具)Git和其他传统版本控制系统比较: 传统的版本控制系统(例如 SVN)是基于差异的版本控…

从零开始学习 Java:简单易懂的入门指南之Stream流(二十七)

Stream流 Stream流1.体验Stream流2.Stream流的常见生成方式3.Stream流中间操作方法4.Stream流终结操作方法5.Stream流的收集操作6.Stream流综合练习 Stream流 1.体验Stream流 案例需求 按照下面的要求完成集合的创建和遍历 创建一个集合&#xff0c;存储多个字符串元素把集合中…