parent
89ac16c28a
commit
c0c2a1894c
@ -0,0 +1,3 @@
|
|||||||
|
import ToolTip from './tooltip.vue'
|
||||||
|
export default ToolTip
|
||||||
|
|
@ -0,0 +1,2 @@
|
|||||||
|
import '../../style/index.less'
|
||||||
|
import './index.less'
|
@ -0,0 +1,207 @@
|
|||||||
|
@import "../../style/themes/default";
|
||||||
|
@import "../../style/mixins/index";
|
||||||
|
|
||||||
|
@tooltip-prefix-cls: ~"@{ant-prefix}-tooltip";
|
||||||
|
|
||||||
|
// Base class
|
||||||
|
.@{tooltip-prefix-cls} {
|
||||||
|
position: absolute;
|
||||||
|
z-index: @zindex-tooltip;
|
||||||
|
display: block;
|
||||||
|
visibility: visible;
|
||||||
|
font-size: @font-size-base;
|
||||||
|
line-height: @line-height-base;
|
||||||
|
|
||||||
|
&-hidden {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-top,
|
||||||
|
&-placement-topLeft,
|
||||||
|
&-placement-topRight {
|
||||||
|
padding-bottom: @tooltip-distance;
|
||||||
|
}
|
||||||
|
&-placement-right,
|
||||||
|
&-placement-rightTop,
|
||||||
|
&-placement-rightBottom {
|
||||||
|
padding-left: @tooltip-distance;
|
||||||
|
}
|
||||||
|
&-placement-bottom,
|
||||||
|
&-placement-bottomLeft,
|
||||||
|
&-placement-bottomRight {
|
||||||
|
padding-top: @tooltip-distance;
|
||||||
|
}
|
||||||
|
&-placement-left,
|
||||||
|
&-placement-leftTop,
|
||||||
|
&-placement-leftBottom {
|
||||||
|
padding-right: @tooltip-distance;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Wrapper for the tooltip content
|
||||||
|
.@{tooltip-prefix-cls}-inner {
|
||||||
|
max-width: @tooltip-max-width;
|
||||||
|
padding: 8px 10px;
|
||||||
|
color: @tooltip-color;
|
||||||
|
text-align: left;
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: @tooltip-bg;
|
||||||
|
border-radius: @border-radius-base;
|
||||||
|
box-shadow: @box-shadow-base;
|
||||||
|
min-height: 34px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Arrows
|
||||||
|
.@{tooltip-prefix-cls}-arrow {
|
||||||
|
position: absolute;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
.@{tooltip-prefix-cls} {
|
||||||
|
&-placement-top &-arrow,
|
||||||
|
&-placement-topLeft &-arrow,
|
||||||
|
&-placement-topRight &-arrow {
|
||||||
|
bottom: @tooltip-distance - @tooltip-arrow-width;
|
||||||
|
border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
|
||||||
|
border-top-color: @tooltip-arrow-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-top &-arrow {
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -@tooltip-arrow-width;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-topLeft &-arrow {
|
||||||
|
left: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-topRight &-arrow {
|
||||||
|
right: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-right &-arrow,
|
||||||
|
&-placement-rightTop &-arrow,
|
||||||
|
&-placement-rightBottom &-arrow {
|
||||||
|
left: @tooltip-distance - @tooltip-arrow-width;
|
||||||
|
border-width: @tooltip-arrow-width @tooltip-arrow-width @tooltip-arrow-width 0;
|
||||||
|
border-right-color: @tooltip-arrow-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-right &-arrow {
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -@tooltip-arrow-width;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-rightTop &-arrow {
|
||||||
|
top: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-rightBottom &-arrow {
|
||||||
|
bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-left &-arrow,
|
||||||
|
&-placement-leftTop &-arrow,
|
||||||
|
&-placement-leftBottom &-arrow {
|
||||||
|
right: @tooltip-distance - @tooltip-arrow-width;
|
||||||
|
border-width: @tooltip-arrow-width 0 @tooltip-arrow-width @tooltip-arrow-width;
|
||||||
|
border-left-color: @tooltip-arrow-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-left &-arrow {
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -@tooltip-arrow-width;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-leftTop &-arrow {
|
||||||
|
top: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-leftBottom &-arrow {
|
||||||
|
bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-bottom &-arrow,
|
||||||
|
&-placement-bottomLeft &-arrow,
|
||||||
|
&-placement-bottomRight &-arrow {
|
||||||
|
top: @tooltip-distance - @tooltip-arrow-width;
|
||||||
|
border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
|
||||||
|
border-bottom-color: @tooltip-arrow-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-bottom &-arrow {
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -@tooltip-arrow-width;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-bottomLeft &-arrow {
|
||||||
|
left: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-placement-bottomRight &-arrow {
|
||||||
|
right: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
modified part ,remove these if needed
|
||||||
|
*/
|
||||||
|
|
||||||
|
.vc-fade-enter-active, .vc-fade-leave-active {
|
||||||
|
transition: all 3s;
|
||||||
|
}
|
||||||
|
.vc-fade-enter, .vc-fade-leave-to /* .fade-leave-active in below version 2.1.8 */ {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box {
|
||||||
|
background: red;
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
}
|
||||||
|
.fade-enter {
|
||||||
|
opacity: 0;
|
||||||
|
animation-duration: 0.3s;
|
||||||
|
animation-fill-mode: both;
|
||||||
|
animation-timing-function: cubic-bezier(0.55, 0, 0.55, 0.2);
|
||||||
|
animation-play-state: paused;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fade-leave {
|
||||||
|
animation-duration: 0.3s;
|
||||||
|
animation-fill-mode: both;
|
||||||
|
animation-timing-function: cubic-bezier(0.55, 0, 0.55, 0.2);
|
||||||
|
animation-play-state: paused;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fade-enter.fade-enter-active {
|
||||||
|
animation-name: rcDialogFadeIn;
|
||||||
|
animation-play-state: running;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fade-leave.fade-leave-active {
|
||||||
|
animation-name: rcDialogFadeOut;
|
||||||
|
animation-play-state: running;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes rcDialogFadeIn {
|
||||||
|
0% {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes rcDialogFadeOut {
|
||||||
|
0% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
<template>
|
||||||
|
<tool-tip
|
||||||
|
placement="top"
|
||||||
|
title="nihaoaaaaaaaaaaaaaaaaaaaaa">
|
||||||
|
<h1 @click="boom" style="display: inline-block">This is just a test, put your cursor here</h1>
|
||||||
|
</tool-tip>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { ToolTip } from '../components'
|
||||||
|
export default {
|
||||||
|
name: '',
|
||||||
|
data() {
|
||||||
|
return {}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
boom() {
|
||||||
|
console.info(23333)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
ToolTip
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
@ -0,0 +1,32 @@
|
|||||||
|
<template>
|
||||||
|
<transition
|
||||||
|
:name="name"
|
||||||
|
:enter-to-class="enterTo"
|
||||||
|
:enter-active-class="enterActive"
|
||||||
|
:leave-to-class="leaveTo"
|
||||||
|
>
|
||||||
|
<slot></slot>
|
||||||
|
</transition>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'ant-transition',
|
||||||
|
props: {
|
||||||
|
name: {
|
||||||
|
required: true,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
enterTo() {
|
||||||
|
return this.name + '-enter'
|
||||||
|
},
|
||||||
|
enterActive() {
|
||||||
|
return `${this.name}-enter ${this.name}-enter-active`
|
||||||
|
},
|
||||||
|
leaveTo() {
|
||||||
|
return this.name + '-leave'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
Loading…
Reference in new issue