el-scrollbar搭配el-backtop滚动到最顶/最底 & el-scrollbar在focus时出现黑框的解决办法

如何搭配 el-scrollbar 和 el-backtop,使其点击后滚动到底部:

html 复制代码
<template>
  <!-- 一个el-scrollbar区域,其ref是chatArea -->
  <el-scrollbar @scroll="(e: any) => { tempHeight = e.scrollTop }" ref="chatArea" always>
  </el-scrollbar>
	<el-backtop :right="40" :bottom="195" :visibility-height="0" @click="goToPlace" />
	<!-- 如果要滚动到最顶部,则可以将goToPlace中的top设为0,或者直接用target -->
  <!-- <el-backtop :right="40" :bottom="195" :visibility-height="0" target=".chat-area .el-scrollbar__wrap" /> -->
</template>
<script>
const goToPlace = () => {
  chatArea.value!.scrollTo({
    top: chatArea.value.wrapRef.scrollHeight,
    behavior: 'smooth'
  })
}
</script>
<style scoped lang="scss">
  /** 如果是要滚动到最底部,则应该让svg箭头图标指向下方 */
  :deep(.el-backtop svg) {
    transform: rotate(180deg);
  }
</style>

另外,当鼠标单击被el-scrollbar包围的区域,然后按下enter键,会发现这时el-scrollbar区域被一圈黑框围起来了,其实这是它的outline属性没被隐藏。解决办法:

css 复制代码
:deep(.el-scrollbar__wrap.el-scrollbar__wrap--hidden-default:focus) {
  outline: none;
}
相关推荐
ruanno_top11 小时前
表单重置后,验证码还显示已通过:Vue 受控组件的 3 种假同步
vue.js
ruanno_top15 小时前
给标签页加 roving tabindex,整组反而键盘进不去了
vue.js
仨孩子的爹15 小时前
CSS打印样式:字体族与行高在纸上的对照实测
vue.js
OpenTiny社区18 小时前
AI Agent场景组件库 TinyRobot v1.0 正式发布:一站式打造您的AI助手
vue.js·github
ruanno_top1 天前
轮播每 3 秒自己翻页:键盘停不下来,读屏也不知道换了页
vue.js
1-1=01 天前
Vue 3 模板语
前端·javascript·vue.js
Java小卷2 天前
面向 Schema 编程,Vue 3 页面级渲染引擎!轻松玩转各场景 Validation!
vue.js·低代码
FungLeo2 天前
成为全栈·Vue 管理后台篇·用 fetch 建一层可控的请求内核
前端·javascript·vue.js·http·fetch·formdata·接口封装
FungLeo2 天前
成为全栈·Vue 管理后台篇·Vue Router如何守住多角色后台边界
前端·javascript·vue.js·rbac·vue router·路由守卫·前端权限