element/examples/docs/tooltip.md

7.0 KiB
Raw Blame History

基础用法

Tooltip 组件常用于展示鼠标 hover 时的提示信息在这里我们提供9种不同的展示方式。

使用content属性来决定hover时的提示信息。

placement属性决定展示效果:

placement属性值为:方向-箭头方位

四个方向:topleftrightbottom

三种箭头方位:start, end,默认为空

top centerplacement="top"left topplacement="left-end"

下面是完整的九个示例,可以通过该示例来理解上面的说明,选择你要的效果:

上左 上边 上右
左上 左边 左下
右上 右边 右下
下左 下边 下右

主题

Tooltip 组件提供了两个不同的主题:darklight,可以通过设置effect属性来改变主题,默认为dark

Top center
Bottom center
<el-tooltip content="Top center" placement="top">
  <el-button>Dark</el-button>
</el-tooltip>
<el-tooltip content="Bottom center" placement="bottom" effect="light">
  <el-button>Light</el-button>
</el-tooltip>

更多Content

如果需要展示多行文本或者是设置文本内容的格式,我们可以考虑用具名 slot 分发content,替代tooltip中的content属性:

多行信息
第二行信息
Top center
<el-tooltip placement="top">
  <div slot="content">多行信息<br/>第二行信息</div>
  <el-button>Top center</el-button>
</el-tooltip>

高级扩展

除了这些基本设置外,还有一些属性可以让使用者更好的定制自己的效果:

transition属性可以定制显隐的动画效果,默认为fade-in-linear

如果需要关闭tooltip功能,disabled属性可以满足这个需求,它接受一个Boolean,设置为true即可。

事实上,这是基于Vue-popper的扩展,你可以自定义任意 Vue-popper 中允许定义的字段。

当然Tooltip 组件实际上十分强大文末的API文档会做一一说明。

点击关闭 tooltip 功能
<template>
  <el-tooltip :disabled="disabled" content="点击关闭 tooltip 功能" transition="slide-fade" placement="bottom" effect="light">
    <el-button @click.native="disabled=true">点击关闭 tooltip 功能</el-button>
  </el-tooltip>
</template>

<style>
  .slide-fade-enter-active {
    transition: all .3s ease;
  }
  .slide-fade-leave-active {
    transition: all .3s cubic-bezier(1.0, 0.5, 0.8, 1.0);
  }
  .slide-fade-enter, .expand-fade-leave-active {
    margin-left: 20px;
    opacity: 0;
  }
</style>

Attributes

参数 说明 类型 可选值 默认值
effect 默认提供的主题 String dark, light dark
content 显示的内容,也可以通过 slot#content 传入 DOM String
placement Tooltip 的出现位置 String top, top-start, top-end, bottom, bottom-start, bottom-end, left, left-start, left-end, right, right-start, right-end bottom
visible 初始状态是否可见 Boolean false
disabled Tooltip 是否可用 Boolean false
offset 出现位置的偏移量 Number 0
transition 定义渐变动画 String fade-in-linear
visible-arrow 是否显示 Tooltip 箭头,更多参数可见Vue-popper Boolean true
options popper.js 的参数 Object 参考 popper.js 文档 { boundariesElement: 'body', gpuAcceleration: false }
openDelay 延迟出现,单位毫秒 Number 0