首页
学习
活动
专区
圈层
工具
发布

Bootstrap源码分析之transition、affix

中 3、三种位置定位样式类: 3.1、Affix-top:到达页面顶部的时候会添加的样式 3.2、Affix:在页面中部的时候会添加的样式 3.3、Affix-bottom:在页面底部的时候会添加的样式...4、处理公式: 1、Top:traget的滚动条高度(scrollTop)元素设定离顶位置的距离(offsetTop)(首次判断)     1.1、scrollTop设置为:元素本身定位的top(...元素当前定位离文档原点的距离)(非首次) 2、getPinnedOffset:获取粘住元素top – target滚动条的top 3、bottom:如果粘住元素是首次bottom定位的时候,那么bottom...就是 target滚动条高度 + target元素的高度 >= 整个文档滚动条高度 – 粘住元素距离底部的高度    3.1、如果是非首次bottom定位       3.1.1、如果offsetTop...值,这就导致在回到页面顶部后,再次向下滚动时候,没有任何效果 原因:行内样式设置的relative会覆盖class中设置的fixed样式 ?

1.6K70
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    深入理解bootstrap

    JavaScript插件 B.栅格系统 1.列偏移:使用.col-md-offset-*形式的样式就可以将列偏移到右侧 2.列嵌套:在一个列里再声明一个或者多个行(row),内部所嵌套的row的宽度为100%时就是当前外部列的宽度...text-danger 2.文本背景样式:.bg-primary、.bg-success、.bg-info、.bg-warning、.bg-danger 3.辅助图标:.close关闭图标、.caret向下箭头...1.滚动侦测(ScrollSpy)插件是根据滚动的位置自动更新导航条中相应的导航项 2.用法: 设置滚动容器,即在所要侦测的元素上设置data-target="@selector" data-spy=....collapsed样式,去掉折叠区域的in样式 3.JS用法:$(xxx).collapse(); K.旋转轮播 L.自动定位浮标 1.Affix的效果就是浮动的左右菜单 2.使用data-spy="...affix",包括affix-top、affix-bottom,配合data-offset使用 六、实战:扩展现有组件 七、实战:Win8磁贴组件开发 九、第三方扩展 1.Font Awesome,.icon-xxx

    4K60

    TDesign 更新周报(2022年3月第1周)

    组件库 Vue2 for Web 发布 0.36.0 版 Input: input 元素 ref 更名,存在不兼容更新 Upload 支持单请求上传批量文件 新增 SelectInput 和 TagInput...& errorMessage Upload: 支持 onCancelUpload & onSelectChange SelectInput:修复点击弹框输入框不高亮、allowInput 无效问题 Affix...:修复 affix 导出问题 InputNumber: 修复加减按钮超出 min、max 的边界问题 Dialog:支持使用 Esc 按键关闭 TreeSelect: 使用 SelectInput 组件重构...WeChat 发布 0.5.4 版 Slider: 视觉调整 & demo 无法滑动问题修复 Search: 修复圆角样式不生效问题 Tab-bar: 修复 value 不生效问题 Picker: 支持渐进式滚动...Tabs: 添加滚动条外部样式类 详情见:https://github.com/Tencent/tdesign-miniprogram/releases/tag/0.5.4 解决方案及周边 TDesign

    1K20

    BootStrap应用开发学习入门1

    ) 描述:附加导航(Affix)插件允许指定 固定在页面的某个位置;它们将在某个位置开始,但当页面点击某个标记,该 会锁定在某个位置,不会随着页面其他部分一起滚动。...语法: (1)通过 data 属性:如需向元素添加附加导航(Affix)行为,只需要向需要监听的元素添加 data-spy="affix" 即可。请使用偏移来定义何时切换元素的锁定和移动。....affix-top #指示元素在它的最顶端位置, 注意这个时候不需要任何的 CSS 定位。....affix-bottom #指示元素在它的最底端位置, 如果定义了底部偏移当滚动到达该位置时,应把 .affix 替换为 .affix-bottom #选项 offset number | function...| object 默认值:10 #data-offset 当计算滚动位置时,距离顶部的偏移像素。

    47K30

    提高效率 |ArcGIS Pro 中所有快捷键一网打尽

    打开时,锚点将位于指针位置。 编辑折点 用于“编辑折点”工具的键盘快捷键 键盘快捷键 操作 注释 T+悬停 显示捕捉容差范围内的折点。 在指针的当前捕捉容差范围内的折点处闪烁显示正方形。...布局 处理布局时适用的键盘快捷键 键盘快捷键 操作 Ctrl+A 选择页面上的所有元素。 Ctrl+Backspace 取消选择页面上的所有元素。...激活“浏览”工具时 用于在激活“浏览”工具时导航地图的键盘快捷键 键盘快捷键 操作 注释 P 在 3D 场景中,从正上方向下(垂直)观看。 按一下此键,视图将自动平移,变为垂直向下显示您的数据。...加号 (+) 或 Ctrl+滚动鼠标滚轮 放大。 放大该地图。 减号 (-) 或 Ctrl+滚动鼠标滚轮 缩小。 缩小地图。 Z+水平移动光标或 Z+滚动鼠标滚轮 更改 z 值。...Ctrl+滚动鼠标滚轮 放大或缩小表的比例。 Ctrl+0 将表的比例重置回 100%。 Shift+滚动鼠标滚轮 水平滚动表窗口。 Ctrl+F 显示查找和替换命令。

    5.6K20

    【JS】322- 手把手教你实现前端惰性加载

    实现方案: 1、默认不加载图片,只加载占位符2、组件滚动条变化3、计算可视区域,触发条件4、标签src属性加载资源 知识点: scrollTop:外框元素的滚动高度offsetTop:元素相对于最近的包含该元素的定位元素...这里应该是有一些可以优化的地方,比如1、可以只监听向下滚动时候的事件,并设置延时(使用截流函数),防制多次调用回调函数。...2、可以设一个标识符标识已经加载图片的index,当滚动条滚动时就不需要遍历所有的图片,只需要遍历未加载的图片即可。3、可以在计算的时候,增加偏移数据,提前加载图片,并使用淡入效果,提高流畅性。...这种条件下,假设 bound=el.getBoundingClientRect(),随着滚动条的向下滚动,bound.top会越来越小,也就是图片到可视区域顶部的距离越来越小,当 bound.top==...=clientHeight时,图片的上沿应该是位于可视区域下沿的位置的临界点,再滚动一点点,图片就会进入可视区域。

    1.2K30

    前端“油画设计师”——双缓存绘制与油画分层机制

    但是当我们当前展示的内容中在主题内容变化不大的情况下,会有一些小部分内容的变化,在页面刷新或者滚动的时候,一帧中会有很多复杂内容元素的图画运算,重新对页面元素绘制会导致CPU使用率飙升。...但在屏幕上完成这一系列操作是需要一定时间的,而且屏幕上的图形越复杂,所花的时间就越长,我们肉眼可见的刮白-重画操作,在使用过程中就会让就会直接感觉到屏幕的闪烁。...重绘带来的性能负担和闪烁的问题,会给使用者带来较差的使用体验。为了更好的优化这个两个问题,出现了双缓存画布和油画分层的绘制方法。...在需要渲染时,只需要讲缓存画布的内容克隆到主画布上,再附加上装饰图层元素 这样,当表格需要更新时候,比如单元格背景改变,只需要在克隆缓存画布后重绘对应单元格内容即可。...而当表格向下滚动时,表格滚动结束,需要重绘,主画布会被清空,然后从缓存画布中根据行为上下文进行画布偏移,将偏移后的图层直接绘制在主画布上,随后在主画布上绘制偏移后的剩余部分,最后更新缓存。

    1.6K20

    手把手教你实现前端惰性加载

    实现方案: 1、默认不加载图片,只加载占位符 2、组件滚动条变化 3、计算可视区域,触发条件 4、标签src属性加载资源 知识点: scrollTop:外框元素的滚动高度 offsetTop:元素相对于最近的包含该元素的定位元素...这里应该是有一些可以优化的地方,比如 1、可以只监听向下滚动时候的事件,并设置延时(使用截流函数),防制多次调用回调函数。...2、可以设一个标识符标识已经加载图片的index,当滚动条滚动时就不需要遍历所有的图片,只需要遍历未加载的图片即可。 3、可以在计算的时候,增加偏移数据,提前加载图片,并使用淡入效果,提高流畅性。...这种条件下,假设 bound=el.getBoundingClientRect(),随着滚动条的向下滚动,bound.top会越来越小,也就是图片到可视区域顶部的距离越来越小,当 bound.top==...=clientHeight时,图片的上沿应该是位于可视区域下沿的位置的临界点,再滚动一点点,图片就会进入可视区域。

    1.1K10

    TDesign 更新周报(2022年7月第1周)

    closeOnOverlayClick closeOnEscKeydown 默认值导致的无法设置的问题Drawer: 修复 header 默认值为 undefined 的问题Dialog: 修复 dialog 滚动失效问题...支持编辑组件联动Table: 树形结构支持半选状态Jumper: 新增 jumper 组件 Bug FixesTable: 表头吸顶显示问题Table: paginationAffixedBottom 支持配置 Affix...popupVisible, readonly, selectInputProps, onPopupVisibleChange 属性,具体描述查看文档Jumper: 新增 jumper 组件Space: 优化空元素渲染...文本过长省略使用原生 title 展示全文本,不再使用 tooltip 组件 Bug Fixestable: 表头吸顶显示问题table: paginationAffixedBottom 支持配置 Affix...失效Dialog: 修复滚动失效问题select: 修复多选下换行提前占满一行的问题Upload: 修复 disabled 依然可删除问题colorPicker: 修复在 ColorTrigger 输入色值时

    2.7K10

    TDesign 更新周报(2022年4月第1周)

    修复 TS 定义报错问题,非 Typescript 或 SSR 项目请尽快由 0.39.0 版本升级 Features ConfigProvider: 完善语言配置能力 Table: 表格超出省略浮层父元素更为表头...thead,避免挂载到全局 body 过滤功能浮层元素默认挂载到 t-table,不再挂载到全局 详情见:https://github.com/Tencent/tdesign-vue/releases...row-first-full-row 更为 t-table__first-full-row,t-table__row-last-full-row 更为 t-table__last-full-row Bug Fixes Affix...: 修复 onFixedChange 触发时机,在固定状态发生变化时才会触发该事件(改动之前为:滚动一直触发) Table: 自定义列配置功能:多级表头和列显示配置同时存在时,无法进行正确的列配置的问题...) 均可 新增全局配置:过滤图标、空元素、异步加载文本配置、排序按钮文本配置 新增 scroll 滚动事件 新增表头吸顶功能 新增综合功能:多级表头 + 固定表头 + 固定列 + 表头吸顶 + 虚拟滚动

    2.8K20

    练一练,亲自动手做一个专业级的 Hero Header 动效

    从设计角度方面来说,好的 Hero Header 都有以下要素:抢眼的标题,头条Call-To-Action 按钮令人印象深刻的背景图或视频嵌入式类型的描述视频或动画介绍特色内容的滚动效果品牌元素 -...使用 :after 伪元素属性,定义白色底部背景部分,让其逆时针旋转(Z轴方向),呈现出向上倾斜的效果(请注意在 header 样式定义 overflow: hidden; 因为旋转,会让其超出容器的高度出现滚动条...animation-delay: 1s;}.header-button {  -webkit-animation-delay: 1.1s;          animation-delay: 1.1s;}4、添加向下闪烁的箭头动效最后我们添加向下闪烁的箭头效果...4.1、定义闪烁的关键帧动画首先我们需要定义 pulse 的关键动画,让其从原来状态→缩小→恢复原来的状态,然后让其不断的循环播放即可。...img src="images/downarrow.png" width="50">5、添加等待状态由于网页依赖网络,我们需要等待所有的 DOM 加载完成,比如背景图片好几兆,网络慢时需要等待好久

    1.5K40

    TDesign 更新周报(2022年6月第4周)

    closeOnEscKeydown, closeOnOverlayClick 配置Local: 增加日语和韩语语言包Table: fullRow不参与排序Bug FixesTable: 吸顶表头支持自定义滚动容器处理...table在部分SSR场景渲染失败的问题修复仅有firstFullRow不渲染的问题修复paginationAffixedBottom 透传Affix 参数不生效修复 0.41.7 版本后过滤功能构建后异常的问题修复...0.41.7 版本后过滤功能构建后异常的问题Select: option数量小于threshold时不开启虚拟滚动单选下 valueType 为 object 时, onChange返回值类型修复修复...TagInput: 修复中文输入按下 Enter 时不触发新标签InputNumber: 修复enter事件不触发的问题Affix: 节点挂载后吸顶没有执行的问题详情见:https://github.com...showErrorMessageDialog: 新增preventScrollThroughTable: 支持拖拽调整宽度,设置 resizable=true 即可Table: 支持表头吸顶、表尾吸底、滚动条吸底

    1.5K20

    「实用推荐」如何优雅的判断元素是否进入当前视区

    背景 在上篇文章:记一次 「 无限列表 」滚动优化 中, 我介绍了「 如何优化一个无限滚动列表 」。 用到了懒加载方案, 一个关键点是:需要判断元素是否在当前视区。 我们今天就看看这个问题。...比如说,你想跟踪 DOM 树里的一个元素,当它进入可见窗口时得到通知。...因为每次调用 getBoundingClientRect 都会强制浏览器重新计算整个页面的布局,可能给你的网站造成相当大的闪烁。...实例:懒加载(lazy load) 有时,我们希望某些静态资源(比如图片),只有用户向下滚动,它们进入视口时才加载,这样可以节省带宽,提高网页性能。这就叫做"惰性加载"。...items'); }); // 开始观察 intersectionObserver.observe( document.querySelector('.scrollerFooter') ); 无限滚动时

    1.7K20

    【vite+vue3+Ts+element-plus】肩并肩带你写后台管理之主页面开发(侧边栏菜单生成、标签栏开发)

    -- 此处注意,不要多嵌套层级,否则可能导致菜单样式错乱,建议直接在父级组件v-for时直接判断 --> affix" @click.prevent="closeTag(item)" /> ... 这里我们使用了el-scrollbar来进行横向滚动,由于el-scrollbar也不支持鼠标滚动的时候横向滚动,所以我们只能监听鼠标滚动事件,自己写一个横向滚动的方法...forEach((item: any) => { if (item.to === route.path) { // 判断当前元素是否超出屏幕 const isOut =...如果是公共路由,我们也可以给路由的meta配置affix: true来实现。 固定标签没有关闭按钮 页面切换过渡效果 刚才说标签的时候提到了缓存页面,不过没有说怎么写,这里和过渡效果一起说。

    5K31
    领券