分享一个页面平滑滚动小技巧(推荐)

2020-04-21 22:41:17易采站长站整理
,元素的顶端将和其所在滚动区的可视区域的顶端对齐。

相应的 

scrollIntoViewOptions: {block: "start", inline: "nearest"}
。这是这个参数的默认值。

如果为

false,
元素的底端将和其所在滚动区的可视区域的底端对齐。

相应的

scrollIntoViewOptions: { block: "end", inline: "nearest" }
Options 对象


{
behavior: "auto" | "instant" | "smooth", 默认为 "auto"。
block: "start" | "end", 默认为 "start"。
inline: "start"| "center"| "end", | "nearest"。默认为 "nearest"。
}

behavior
表示滚动方式。
auto
表示使用当前元素的
scroll-behavior
样式。
instant
smooth
表示
直接滚到底
使用平滑滚动

block
表示块级元素排列方向要滚动到的位置。对于默认的
writing-mode: horizontal-tb
来说,就是竖直方向。
start
表示将视口的顶部和元素顶部对齐;
center
表示将视口的中间和元素的中间对齐;
end
表示将视口的底部和元素底部对齐;
nearest
表示就近对齐。
inline
表示行内元素排列方向要滚动到的位置。对于默认的
writing-mode: horizontal-tb
来说,就是水平方向。其值与
block
类似。

scrollIntoView 浏览器兼容性

最后我用的是

scrollIntoView
, 问题完美解决。