diff --git a/docs/.vitepress/config/plugins.ts b/docs/.vitepress/config/plugins.ts
index 3dabc9d13f0f0..d6963e1becd36 100644
--- a/docs/.vitepress/config/plugins.ts
+++ b/docs/.vitepress/config/plugins.ts
@@ -5,6 +5,7 @@ import mdContainer from 'markdown-it-container'
import { docRoot } from '@element-plus/build-utils'
import externalLinkIcon from '../plugins/external-link-icon'
import tableWrapper from '../plugins/table-wrapper'
+import tooltip from '../plugins/tooltip'
import { ApiTableContainer } from '../plugins/api-table'
import { highlight } from '../utils/highlight'
import type Token from 'markdown-it/lib/token'
@@ -27,6 +28,7 @@ interface ContainerOpts {
export const mdPlugin = (md: MarkdownIt) => {
md.use(externalLinkIcon)
md.use(tableWrapper)
+ md.use(tooltip)
md.use(mdContainer, 'demo', {
validate(params) {
return !!params.trim().match(/^demo\s*(.*)$/)
diff --git a/docs/.vitepress/plugins/tooltip.ts b/docs/.vitepress/plugins/tooltip.ts
new file mode 100644
index 0000000000000..3d1168ec73925
--- /dev/null
+++ b/docs/.vitepress/plugins/tooltip.ts
@@ -0,0 +1,31 @@
+import type MarkdownIt from 'markdown-it'
+
+export default (md: MarkdownIt): void => {
+ md.renderer.rules.tooltip = (tokens, idx) => {
+ const token = tokens[idx]
+
+ return ``
+ }
+
+ md.inline.ruler.before('emphasis', 'tooltip', (state, silent) => {
+ const tooltipRegExp = /^\^\[([^\]]*)\](\[[^\]]*\])?/
+ const str = state.src.slice(state.pos, state.posMax)
+
+ if (!tooltipRegExp.test(str)) return false
+ if (silent) return true
+
+ const result = str.match(tooltipRegExp)
+
+ if (!result) return false
+
+ const token = state.push('tooltip', 'tooltip', 0)
+ token.content = result[1]
+ token.info = (result[2] || '')
+ .replace(/^\[([^\]]*)\]$/, '$1')
+ .replace(/^`([^`]*)`$/, '$1')
+ token.level = state.level
+ state.pos += result[0].length
+
+ return true
+ })
+}
diff --git a/docs/.vitepress/vitepress/components/globals/vp-api-typing.vue b/docs/.vitepress/vitepress/components/globals/vp-api-typing.vue
index 71cf00046d9cc..995edfdf9db7f 100644
--- a/docs/.vitepress/vitepress/components/globals/vp-api-typing.vue
+++ b/docs/.vitepress/vitepress/components/globals/vp-api-typing.vue
@@ -12,7 +12,7 @@ defineProps({
{{ type }}
-
+