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

有意思的水平横向溢出滚动

最近接到一个很有意思的需求,能否做到当内容横向溢出时,依然能够使用鼠标滚轮对内容进行滚动的方法。 什么意思呢?...当然,这样还有个非常严重的问题,如果容器内存在内容,那么就变成了这样: Oh,由于容器整体旋转了 90°,里面的内容当然也一起发生了旋转。我们需要解决这个问题。...我们实际触发滚动操作的实际是 g-pesudo 的变化,我们只需要将内容通过再一次旋转,完美叠加在原本的容器之上即可: .g-scroll { position: relative; width...完整的代码,你可以戳:CodePen Demo -- CSS-Only Horizontal Parallax Gallery 隐藏滚动条 当然,有个问题,这样滚动条就穿帮了。...这里再给另外一个用这个技巧实现的 DEMO,一个横向 3D 纯 CSS 的视差效果,使用鼠标滚轮控制页面横向滚动: 感兴趣可以自行研究下源码,整体的技巧与上述阐述的类似,容器一次旋转,内容二次反向旋转即可

3K10

给gRPC-spring-boot-starter一个pr的说明

bug出现,grpc未优雅下线 风风火火重构了所有代码,全部换成gRPC-spring-boot-starter后就上线了,上线后一切都非常好,但是项目在第二次需求上线投产时发生了一些问题。...这个时候还不确定是切换grpc实现导致的问题,现象就是,线上出现了大量的请求异常。上线完成后,异常就消失了。后面每次滚动更新都会出现类似的异常。...验证修复后的效果 先将上面的代码修复下,正确的关闭逻辑应该如下,在Grpc发出shutdown指令后,阻塞等待所有请求正常结束,同时,这里阻塞也会夯住主进程不会里面挂掉。...,直到业务方法中模拟的业务阻塞结束后,java进程才被kill掉,这正是我们想要达到的优雅下线关闭的效果。...被kill时的,线程堆栈如下: 即使被kill了,还是能打印如下的日志【阻塞完成,请求结束】,进一步验证了修复后确实解决了问题:

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

    K8S Pod流量的优雅无损切换实践

    根据默认情况,Kubernetes 部署会以滚动更新策略推动 Pod 容器版本更新。...通过上面的案例看执行效果可知,从旧版本到新版本的滚动更新看起来确实是平滑更新的。...然而不希望发生的事情还是发生了,从旧版本到新版本的切换并不总是完美平滑的,也就是说应用程序可能会丢失一些客户端的请求。这是不可以接受的情况。 为了真正测试当一个实例被退出服务时,请求是否会丢失。...了解问题根源 现在需要搞清楚的问题是,Kubernetes 在滚动更新时将流量重新路由,从一个旧的 Pod 实例版本到新的 Pod 实例版本,到底发生了什么。...为了解决 Pod terminations 目前没有阻塞和等待直到负载均衡器被重新配置的问题,包含一个 preStop 生命周期钩子。这个钩子会在容器终止之前被调用。

    1.8K20

    CSS 布局技巧 | 移动端 H5 滚动条深度解析,从触发逻辑到多端兼容

    改造进展相对顺利,因为项目用的antd组件,大部分内容在手机横屏模式下,可以正常展示。部分错位或超出的展示,调整也相对简单。唯独滚动功能,出现了兼容性问题。...当内容的高度超过容器的高度时,浏览器会自动显示滚动条。滚动条可以分为两种类型:body滚动:整个页面的滚动,适用于内容高度超过视口高度的情况。...以下是一个使用iScroll的示例:/** * 初始化一个IScroll实例,用于实现水平滚动效果 * * @param {string} '#content' - 选择器字符串,指定要应用滚动效果的容器元素...布局影响:滚动条占用固定空间,导致容器实际内容区域被压缩(例如水平滚动条占据高度,垂直滚动条占据宽度)。典型问题:在未溢出时,禁用状态的滚动条造成视觉干扰,且浪费屏幕空间。...,然而,在实际开发中,我们仍有可能会遇到比较奇葩的问题。

    29620

    如何优雅地实施持续交付部署

    缺点 这个过程存在多个阶段,所以需要以Swarm之外的监控和健康检查的形式进行支持 对于基础设施发生变化的情况下,效果不好 对正在运行的服务器进行更改——万一发生故障,恢复时间可能会很长 优点 组件更新少...但是,我们并没有定义应该保持联机状态的容器数量,而是指定最大数量的容器进行更新。 例如:我们有和前面一样的5个容器,但是这次我们通过指定可以同时更新的容器的数量来初始化滚动更新,例如2个。...这个过程一次移动两个容器的更新,直到集群中的所有服务器被更新。 注意:Docker Swarm支持滚动更新。默认情况下是一次更新一个容器。...缺点 Docker滚动更新有两种方式来处理部署过程失败的情况: 通过暂停,允许人为介入并回滚修复 或忽略报错继续执行,这意味着你可能错过在容器运行过程中出现的问题 比服务中最小部署(见上面)更复杂 在部署时间方面可能是效率最低的...又名红/黑)方法时,我们短时间复制我们的“整个”基础设施。

    63010

    如何实现一个能精确同步滚动的Markdown编辑器

    ,比如在编辑区域滚动时,预览区域会随着滚动,反之亦然,方便两边对照查看,如果你用过多个平台的Markdown编辑器的话可能会发现有的平台编辑器同步滚动非常精确,比如掘金、segmentfault、CSDN...htmlStr = ref(""); // 编辑器文本发生变化后进行转换工作 const onChange = (instance) => { unified() .use(remarkParse...]; } }; 效果如下: 修复节点内滚动不同步的问题 可以看到跨节点滚动已经比较精准了,但是如果一个节点高度比较大,那么在节点内滚动右侧是不会同步滚动的: 原因很简单,我们的同步滚动目前只精确到某个节点...: 修复两边没有同时滚动到底部的问题 同步滚动已经基本上很精确了,不过还有个小问题,就是当编辑区域已经滚动到底了,而预览区域没有: 这是符合逻辑的,但是不符合情理,所以当一边滚动到底时我们让另一边也到底...效果如下: 问题又来了,我们鼠标已经停止滚动了,但是滚动却还在继续,原因也很简单,因为两边都绑定了滚动事件,所以互相触发跟随滚动,导致死循环,解决方式也很简单,我们设置一个变量来记录当前我们是在哪边触发滚动

    1.1K10

    【Android从零单排系列二十七】《Android视图控件——HorizontalScrollView》

    前言 小伙伴们,在上文中我们介绍了Android视图组件ScrollView,本文我们继续盘点,介绍一下视图控件的HorizontalScrollView。...性能考虑:因为所有子视图都会被加载到内存中,并且在一次性渲染到屏幕上,在添加大量子视图时,应注意性能问题。...默认值为true,在子视图不足以填充水平空间时,会拉伸子视图使得水平空间被填满。 android:overScrollMode:设置滚动边界效果模式。...可选值有"always"(总是显示边界阴影效果)、"never"(永不显示边界阴影效果)和"ifContentScrolls"(仅当内容发生滚动时显示边界阴影效果)。...onScrollChanged(int l, int t, int oldl, int oldt):当滚动位置发生变化时被调用的回调方法。

    84510

    浏览器页面渲染全解析过程优化及实战指南详解

    CRP优化工具Lighthouse:全面的性能分析工具WebPageTest:多地点性能测试Chrome DevTools:性能分析和调试四、重排(Reflow)与重绘(Repaint)(一)重排当DOM的变化影响了元素的布局信息时触发会导致浏览器重新计算布局触发重排的操作添加....element { will-change: transform; }(三)合成层优化场景动画元素滚动容器频繁变化的元素(四)合成层注意事项不要创建过多合成层合成层需要内存和管理开销使用Chrome...DevTools的Layers面板调试六、应用实例:高性能滚动组件(一)传统滚动实现的问题频繁触发重排和重绘滚动事件处理性能瓶颈(二)高性能实现方案// 高性能滚动组件实现class SmoothScroller...requestAnimationFrame:优化动画性能transform属性:利用合成层避免重排重绘虚拟滚动:只渲染可见区域的内容七、应用实例:响应式图片加载优化(一)图片加载对渲染的影响大图片会阻塞首次渲染不适当的图片尺寸导致布局抖动...loading="lazy":懒加载非首屏图片decoding="async":异步解码图片占位符和骨架屏:避免布局抖动八、应用实例:单页应用(SPA)渲染优化(一)SPA渲染的挑战首次加载时间长路由切换时的白屏问题

    52410

    移动端框架 滚动类 iScroll5

    HTML5学堂:移动端开发中,经常遇到需要模拟APP的效果header或是footer固定住,里面的内容区域实现滚动。但是对低端手机单纯使用CSS是兼容不了,需要JavaScript的支持。...本文讲解了使用iScroll5的使用方法,解决了固定高度的容器内滚动内容。...iscroll诞生的意义 之所以iscroll会诞生,主要是因为无论是在以前的iphone、ipod、android 或是更早前的移动webkit都没有提供一种原生的方式来支持在一个固定高度的容器内滚动内容...之前一直都在使用iScroll4.0版本,后来查到iScroll5已经比较稳定了(即度过了“测试版”),于是转到了5这个版本上,不过~iScroll5和iScroll4的差别有些大,包括语法都发生了很大的变化...为滚动区域增加position:relative或者absolute,能够解决大部分尺寸计算上的问题。

    1.3K90

    鸿蒙开发实战案例:视频卡片和列表区域的联动滚动思路

    介绍本示例使用Scroll和List组件嵌套,通过List组件的滚动控制器和nestedScroll属性实现了视频卡片和列表区域的联动滚动场景。...视频卡片点击上一条、下一条时,通过List的滚动控制器控制列表滚动到指定位置,视频卡片不发生滚动。点击列表项,列表发生滚动,视频卡片不滚动。...}) this.currentPlayNews = this.newsList.getData(this.currentIndex); ... }为了解决新闻列表与外层Scroll容器嵌套时的滚动冲突问题...})为了实现视频卡片的吸顶效果, Scroll 容器的内容高度使用 calc 计算属性设置为 Scroll 容器高度和视频高度的和,使 Scroll 滚动到尾部边缘时,视频隐藏,视频卡片吸顶。...,当视频卡片吸顶时新闻列表可以完全显示,并且当新闻标题改变导致卡片高度发生变化时,新闻列表组件高度也相应变化。

    44410

    将云原生进行到底:腾讯百万级别容器云平台实践揭秘

    遇到哪些新的挑战?如何优化?效果怎么样?腾讯云高级工程师林沐将为你解答。 在线业务资源容器化部署的问题与优化方案 腾讯平台的业务基本都属于在线业务。...这种资源管理方式到容器化部署时发生了一些变化,主要有四方面的内容。 容器交付。每个 Pod 在交付的同时需要声明规格大小,规格大小要改变时 Pod 必须销毁重建,无法通过混部来新增业务。节点均衡。...这样导致一个问题,如果进行强制销毁,可能老容器会残留,新容器又起来了,这时老的容器会影响节点。...对定位到根因的我们要去评估它的影响面,防止增量发生。而已经有解决方案的,我们需要有全网修复能力,出现异常的时候要告警,从而实现闭环解决方案。...同时选择一些已知问题或者根因比较明确的作为叶子节点。 最后一步是模型优化,例如剪枝优化,通过后剪枝的方式解决过拟合现象。同时简化模型。通过这种方式, 当容器发生销毁失败时,能够触发自愈路径。

    1.4K20

    浅议内滚动布局 - 腾讯ISUX

    我想了想,好像然后就没有“然后”了,让一个div容器滚动就完事了。 然而,事非经过不知难,原理虽然简单没说头,但是细节操作还是有些上手成本的。 为了更好理解,我们拿实例说话。...讲到这里就不得不说点题外话,很多人会遇到移动端position:fixed的底部输入框定位的头疼问题,如何解决?...于是,一个高宽均自适应浏览器窗体的内滚动布局就成型了。 四、内滚动布局的赏与罚 我们站在上帝视角审视一下内滚动布局,本质上就是滚动容器的迁移,职能下发。...太天真了!以前我们的滚动条是跟浏览器上边缘是靠在一起的,但是,自从变成了内滚动,滚动条是跟网站公用头部下边缘排排站,这会造成什么问题呢?就是一些offset的计算要发生一些变化。...随意改变滚动容器最大的问题在于,当存在覆盖层的时候,会影响背后页面内容的滚动。

    1.6K30

    将云原生进行到底:腾讯百万级别容器云平台实践揭秘

    遇到哪些新的挑战?如何优化?效果怎么样?腾讯云高级工程师林沐将为你解答。 在线业务资源容器化部署的问题与优化方案 腾讯平台的业务基本都属于在线业务。...这种资源管理方式到容器化部署时发生了一些变化,主要有四方面的内容。 容器交付。每个 Pod 在交付的同时需要声明规格大小,规格大小要改变时 Pod 必须销毁重建,无法通过混部来新增业务。节点均衡。...这样导致一个问题,如果进行强制销毁,可能老容器会残留,新容器又起来了,这时老的容器会影响节点。...对定位到根因的我们要去评估它的影响面,防止增量发生。而已经有解决方案的,我们需要有全网修复能力,出现异常的时候要告警,从而实现闭环解决方案。...同时选择一些已知问题或者根因比较明确的作为叶子节点。 最后一步是模型优化,例如剪枝优化,通过后剪枝的方式解决过拟合现象。同时简化模型。通过这种方式, 当容器发生销毁失败时,能够触发自愈路径。

    1.1K20

    Scroll,你玩明白了嘛?

    ;  scroll-behavior: smooth;  border: 1px solid grey; } 在 scroll-behavior: smooth 的作用下,容器内的默认滚动呈现了平滑滚动的效果...2、在可滚动的容器上设置了 scroll-behavior: smooth 之后,还能够影响到浏览器 Ctrl+F 的表现,使其也呈现平滑滚动的效果。...这个问题常常发生在哪些情况下呢? 1、页面有 iframe 的情况下,比如说这个例子。 表现是当 iframe 内的内容发生滚动时,主页面也发生了滚动。...回到我们的问题,为什么使用默认参数,即 element.scrollIntoView(),会引发页面偏移的问题呢?...核心的交互是: 1、当用户没有人为滚动文稿时,会保持自动翻页的功能 2、当用户人为滚动文稿时,后续将不会自动翻页,并出现 “回到当前播放位置” 的按钮 3、假如点击了 “回到当前播放位置” 的按钮,会回到目标位置

    3.5K22

    前端编程技巧 | H5在线商城项目复盘之后,总结出了若干个场景解决方案

    引言前段时间,我重新接手了H5在线商城项目。这个项目从诞生到现在,已经过去了两年的时间,这期间,项目经手了多名不同的开发者。在众多因素的作用下,该项目目前的维护和拓展难度已经达到了一定高度。...这是一个常见的问题,传统渲染会导致成千上万的DOM节点,引发布局计算与重绘耗时激增;滚动时JS计算(如样式计算、数据过滤)阻塞主线程,导致卡顿;未销毁的事件监听器或DOM引用可能导致内存泄漏,尤其在SPA...解决:使用事件委托(如将点击事件绑定到容器)。组件卸载时手动解绑监听器。(3)CSS Containment 失效问题:部分安卓浏览器不支持 contain: strict,导致列表重绘范围扩大。...(5)滚动卡顿与回弹缺失问题:iOS局部滚动容器生涩,安卓缺乏弹性滚动效果。解决:安卓需引入第三方库(如 better-scroll)模拟回弹。....* 当检测到高速滚动时,会扩大预加载范围以提高用户体验。

    40501

    浅议内滚动布局

    讲到这里就不得不说点题外话,很多人会遇到移动端position:fixed的底部输入框定位的头疼问题,如何解决?...于是,一个高宽均自适应浏览器窗体的内滚动布局就成型了。 四、内滚动布局的赏与罚 我们站在上帝视角审视一下内滚动布局,本质上就是滚动容器的迁移,职能下发。...太天真了!以前我们的滚动条是跟浏览器上边缘是靠在一起的,但是,自从变成了内滚动,滚动条是跟网站公用头部下边缘排排站,这会造成什么问题呢?就是一些offset的计算要发生一些变化。...随意改变滚动容器最大的问题在于,当存在覆盖层的时候,会影响背后页面内容的滚动。...WEB前端性能优化常见方法 一小时内搭建一个全栈Web应用框架 干货:CSS 专业技巧 四步实现React页面过渡动画效果 让你分分钟理解 JavaScript 闭包 ---- ---- 小手一抖,

    1.3K20

    实现滚动时Header自动隐藏

    这是掘金网页版的头部,当滚动条向下滑动时,主header会隐藏,次级header会吸在页面顶部。...同时为元素设置transition,提供缓动效果。 这样,header的显示和隐藏就实现了,接下来就是检测滚动方向。...、滚动状态(到顶部/到底部)和是否在滚动 其中,函数返回的 directions 是一个 reactive 对象,我们对其进行监听,当该变量发生变化时,说明滚动方向发生了改变。...,这是为了避免iOS设备中safari浏览器橡皮筋效果导致的误判 所以为什么 safari 橡皮筋效果也会触发scroll事件啊啊啊啊啊!!!...甚至y值能到负值 查看示例 这里还有一个问题,只检测了滚动到顶部,而没有检测滚动到底部。这是因为我没想到什么很好的方法去检测。

    2.9K30

    控制页面的滚动:自定义下拉到刷新和溢出效果

    作为一个例子,带一个应用程序抽屉带有大量用户可能需要滚动的项目。当它们到达底部时,溢出容器将停止滚动,因为没有更多内容可供使用。换句话说,用户到达“滚动边界”。...但是请注意,如果用户继续滚动会发生什么情况。抽屉后面的内容开始滚动!滚动由父容器占领;例子中的主页面本身 被证实这种行为称为滚动链接;滚动内容时浏览器的默认行为。...这些变通办法在滚动性能方面具有良好记录的负面影响 引入overscroll行为 overscroll-behavior属性是一个新的CSS功能,用于控制当你过度滚动容器(包括页面本身)时发生的情况。...滚动不会传播给祖先,但会显示节点内的本地效果。例如,Android上的滚动滚动效果或iOS上的橡皮筋效果,它会在用户点击滚动边界时通知用户。.... */ overscroll-behavior-y: contain; } 通过这个简单的添加,我们修复了聊天框演示中的双拉到更新动画,并且可以实现使用整洁加载动画的自定义效果。

    4K20

    面试官问:如何判断一个元素是否在可视区域?

    最近在参加面试找工作,陆陆续续的面了两三家。其中一个面试官问到了一个问题:如何判断一个元素是否在可视区域?由于平时处理的不多,所以一时没有回答出来,后来研究了下,所以有了这篇文章。 1....image.png 当页面发生滚动的时候,它们会随之改变。...root 属性,rootMargin 属性 很多时候,目标元素不仅会随着窗口滚动,还会在容器里面滚动(比如在iframe窗口里滚动)。容器内滚动也会影响目标元素的可见性。...这样设置以后,不管是窗口滚动或者容器内滚动,只要目标元素可见性变化,都会触发观察器。 4....「列表的无限滚动」 无限滚动时,最好在页面底部有一个页尾栏。一旦页尾栏可见,就表示用户到达了页面底部,从而加载新的条目放在页尾栏前面。

    3.6K22
    领券