Tooltip 文字提示


常用於展示鼠標 hover 時的提示信息。

基礎用法

在這里我們提供 9 種不同方向的展示方式,可以通過以下完整示例來理解,選擇你要的效果。

使用content屬性來決定hover時的提示信息。由placement屬性決定展示效果:placement屬性值為:方向-對齊位置;四個方向:topleftrightbottom;三種對齊位置:startend,默認為空。如placement="left-end",則提示信息出現在目標元素的左側,且提示信息的底部與目標元素的底部對齊。

 1 <div class="box">
 2   <div class="top">
 3     <el-tooltip class="item" effect="dark" content="Top Left 提示文字" placement="top-start">
 4       <el-button>上左</el-button>
 5     </el-tooltip>
 6     <el-tooltip class="item" effect="dark" content="Top Center 提示文字" placement="top">
 7       <el-button>上邊</el-button>
 8     </el-tooltip>
 9     <el-tooltip class="item" effect="dark" content="Top Right 提示文字" placement="top-end">
10       <el-button>上右</el-button>
11     </el-tooltip>
12   </div>
13   <div class="left">
14     <el-tooltip class="item" effect="dark" content="Left Top 提示文字" placement="left-start">
15       <el-button>左上</el-button>
16     </el-tooltip>
17     <el-tooltip class="item" effect="dark" content="Left Center 提示文字" placement="left">
18       <el-button>左邊</el-button>
19     </el-tooltip>
20     <el-tooltip class="item" effect="dark" content="Left Bottom 提示文字" placement="left-end">
21       <el-button>左下</el-button>
22     </el-tooltip>
23   </div>
24 
25   <div class="right">
26     <el-tooltip class="item" effect="dark" content="Right Top 提示文字" placement="right-start">
27       <el-button>右上</el-button>
28     </el-tooltip>
29     <el-tooltip class="item" effect="dark" content="Right Center 提示文字" placement="right">
30       <el-button>右邊</el-button>
31     </el-tooltip>
32     <el-tooltip class="item" effect="dark" content="Right Bottom 提示文字" placement="right-end">
33       <el-button>右下</el-button>
34     </el-tooltip>
35   </div>
36   <div class="bottom">
37     <el-tooltip class="item" effect="dark" content="Bottom Left 提示文字" placement="bottom-start">
38       <el-button>下左</el-button>
39     </el-tooltip>
40     <el-tooltip class="item" effect="dark" content="Bottom Center 提示文字" placement="bottom">
41       <el-button>下邊</el-button>
42     </el-tooltip>
43     <el-tooltip class="item" effect="dark" content="Bottom Right 提示文字" placement="bottom-end">
44       <el-button>下右</el-button>
45     </el-tooltip>
46   </div>
47 </div>
48 
49 <style>
50   .box {
51     width: 400px;
52 
53     .top {
54       text-align: center;
55     }
56 
57     .left {
58       float: left;
59       width: 60px;
60     }
61 
62     .right {
63       float: right;
64       width: 60px;
65     }
66 
67     .bottom {
68       clear: both;
69       text-align: center;
70     }
71 
72     .item {
73       margin: 4px;
74     }
75 
76     .left .el-tooltip__popper,
77     .right .el-tooltip__popper {
78       padding: 8px 10px;
79     }
80   }
81 </style>
View Code

主題

Tooltip 組件提供了兩個不同的主題:darklight

通過設置effect屬性來改變主題,默認為dark

1 <el-tooltip content="Top center" placement="top">
2   <el-button>Dark</el-button>
3 </el-tooltip>
4 <el-tooltip content="Bottom center" placement="bottom" effect="light">
5   <el-button>Light</el-button>
6 </el-tooltip>
View Code

更多 Content

展示多行文本或者是設置文本內容的格式

用具名 slot 分發content,替代tooltip中的content屬性。

1 <el-tooltip placement="top">
2   <div slot="content">多行信息<br/>第二行信息</div>
3   <el-button>Top center</el-button>
4 </el-tooltip>
View Code

高級擴展

除了這些基本設置外,還有一些屬性可以讓使用者更好的定制自己的效果:

transition 屬性可以定制顯隱的動畫效果,默認為fade-in-linear。 如果需要關閉 tooltip 功能,disabled 屬性可以滿足這個需求,它接受一個Boolean,設置為true即可。

事實上,這是基於 Vue-popper 的擴展,你可以自定義任意 Vue-popper 中允許定義的字段。 當然 Tooltip 組件實際上十分強大,文末的API文檔會做一一說明。

1 <template>
2   <el-tooltip :disabled="disabled" content="點擊關閉 tooltip 功能" placement="bottom" effect="light">
3     <el-button @click="disabled = !disabled">點擊{{disabled ? '開啟' : '關閉'}} tooltip 功能</el-button>
4   </el-tooltip>
5 </template>
View Code

tooltip 內不支持 router-link 組件,請使用 vm.$router.push 代替。

tooltip 內不支持 disabled form 元素,參考MDN,請在 disabled form 元素外層添加一層包裹元素。

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
value(v-model) 狀態是否可見 Boolean false
disabled Tooltip 是否可用 Boolean false
offset 出現位置的偏移量 Number 0
transition 定義漸變動畫 String el-fade-in-linear
visible-arrow 是否顯示 Tooltip 箭頭,更多參數可見Vue-popper Boolean true
popper-options popper.js 的參數 Object 參考 popper.js 文檔 { boundariesElement: 'body', gpuAcceleration: false }
open-delay 延遲出現,單位毫秒 Number 0
manual 手動控制模式,設置為 true 后,mouseenter 和 mouseleave 事件將不會生效 Boolean false
popper-class 為 Tooltip 的 popper 添加類名 String
enterable 鼠標是否可進入到 tooltip 中 Boolean true
hide-after Tooltip 出現后自動隱藏延時,單位毫秒,為 0 則不會自動隱藏 number 0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM