Skip to content

Commit b1d23c5

Browse files
committed
optimize the style of the popover component
1 parent 86d1e77 commit b1d23c5

File tree

2 files changed

+55
-30
lines changed

2 files changed

+55
-30
lines changed

components/popover/style/index.less

Lines changed: 45 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@
99
top: 0;
1010
left: 0;
1111
z-index: @zindex-popover;
12-
cursor: auto;
13-
user-select: text;
14-
white-space: normal;
1512
font-weight: normal;
13+
white-space: normal;
1614
text-align: left;
15+
cursor: auto;
16+
user-select: text;
1717

18-
&:after {
19-
content: '';
18+
&::after {
2019
position: absolute;
21-
background: rgba(255, 255, 255, 0.01);
20+
background: fade(@white, 1%);
21+
content: '';
2222
}
2323

2424
&-hidden {
@@ -55,16 +55,24 @@
5555
background-clip: padding-box;
5656
border-radius: @border-radius-base;
5757
box-shadow: @box-shadow-base;
58+
box-shadow: ~'0 0 8px @{shadow-color} \9';
59+
}
60+
61+
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
62+
/* IE10+ */
63+
&-inner {
64+
box-shadow: @box-shadow-base;
65+
}
5866
}
5967

6068
&-title {
6169
min-width: @popover-min-width;
70+
min-height: 32px;
6271
margin: 0; // reset heading margin
6372
padding: 5px @padding-md 4px;
64-
min-height: 32px;
65-
border-bottom: 1px solid @border-color-split;
6673
color: @heading-color;
6774
font-weight: 500;
75+
border-bottom: 1px solid @border-color-split;
6876
}
6977

7078
&-inner-content {
@@ -73,10 +81,10 @@
7381
}
7482

7583
&-message {
84+
position: relative;
7685
padding: 4px 0 12px;
77-
font-size: @font-size-base;
7886
color: @popover-color;
79-
position: relative;
87+
font-size: @font-size-base;
8088
> .@{iconfont-css-prefix} {
8189
position: absolute;
8290
top: 8px; // 4px for padding-top, 4px for vertical middle;
@@ -89,8 +97,8 @@
8997
}
9098

9199
&-buttons {
92-
text-align: right;
93100
margin-bottom: 4px;
101+
text-align: right;
94102
button {
95103
margin-left: 8px;
96104
}
@@ -100,22 +108,25 @@
100108
// .popover-arrow is outer, .popover-arrow:after is inner
101109

102110
&-arrow {
103-
background: @popover-bg;
104-
background-color: inherit;
105-
width: sqrt(@popover-arrow-width * @popover-arrow-width * 2);
106-
height: sqrt(@popover-arrow-width * @popover-arrow-width * 2);
107-
transform: rotate(45deg);
108111
position: absolute;
109112
display: block;
110-
border-color: transparent;
113+
width: sqrt(@popover-arrow-width * @popover-arrow-width * 2);
114+
height: sqrt(@popover-arrow-width * @popover-arrow-width * 2);
115+
background: transparent;
116+
border-width: sqrt(@popover-arrow-width * @popover-arrow-width * 2) / 2;
111117
border-style: solid;
118+
transform: rotate(45deg);
112119
}
113120

114121
&-placement-top > &-content > &-arrow,
115122
&-placement-topLeft > &-content > &-arrow,
116123
&-placement-topRight > &-content > &-arrow {
117-
bottom: @popover-distance - @popover-arrow-width + 1.5px;
118-
box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.07);
124+
bottom: @popover-distance - @popover-arrow-width + 2.2px;
125+
border-top-color: transparent;
126+
border-right-color: @popover-bg;
127+
border-bottom-color: @popover-bg;
128+
border-left-color: transparent;
129+
box-shadow: 3px 3px 7px fade(@black, 7%);
119130
}
120131
&-placement-top > &-content > &-arrow {
121132
left: 50%;
@@ -132,7 +143,11 @@
132143
&-placement-rightTop > &-content > &-arrow,
133144
&-placement-rightBottom > &-content > &-arrow {
134145
left: @popover-distance - @popover-arrow-width + 2px;
135-
box-shadow: -3px 3px 7px rgba(0, 0, 0, 0.07);
146+
border-top-color: transparent;
147+
border-right-color: transparent;
148+
border-bottom-color: @popover-bg;
149+
border-left-color: @popover-bg;
150+
box-shadow: -3px 3px 7px fade(@black, 7%);
136151
}
137152
&-placement-right > &-content > &-arrow {
138153
top: 50%;
@@ -149,7 +164,11 @@
149164
&-placement-bottomLeft > &-content > &-arrow,
150165
&-placement-bottomRight > &-content > &-arrow {
151166
top: @popover-distance - @popover-arrow-width + 2px;
152-
box-shadow: -2px -2px 5px rgba(0, 0, 0, 0.06);
167+
border-top-color: @popover-bg;
168+
border-right-color: transparent;
169+
border-bottom-color: transparent;
170+
border-left-color: @popover-bg;
171+
box-shadow: -2px -2px 5px fade(@black, 6%);
153172
}
154173
&-placement-bottom > &-content > &-arrow {
155174
left: 50%;
@@ -166,7 +185,11 @@
166185
&-placement-leftTop > &-content > &-arrow,
167186
&-placement-leftBottom > &-content > &-arrow {
168187
right: @popover-distance - @popover-arrow-width + 2px;
169-
box-shadow: 3px -3px 7px rgba(0, 0, 0, 0.07);
188+
border-top-color: @popover-bg;
189+
border-right-color: @popover-bg;
190+
border-bottom-color: transparent;
191+
border-left-color: transparent;
192+
box-shadow: 3px -3px 7px fade(@black, 7%);
170193
}
171194
&-placement-left > &-content > &-arrow {
172195
top: 50%;

components/style/themes/default.less

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
@highlight-color : @red-6;
1414
@warning-color : @gold-6;
1515
@normal-color : #d9d9d9;
16+
@white: #fff;
17+
@black: #000;
1618

1719
// Color used by default to control hover and active backgrounds and for
1820
// alert info backgrounds.
@@ -292,20 +294,20 @@
292294

293295
// Popover
294296
// ---
295-
//** Popover body background color
297+
// Popover body background color
296298
@popover-bg: #fff;
297-
//** Popover text color
299+
// Popover text color
298300
@popover-color: @text-color;
299-
//** Popover maximum width
301+
// Popover maximum width
300302
@popover-min-width: 177px;
301-
//** Popover arrow width
303+
// Popover arrow width
302304
@popover-arrow-width: 6px;
303-
//** Popover arrow color
305+
// Popover arrow color
304306
@popover-arrow-color: @popover-bg;
305-
//** Popover outer arrow width
306-
//** Popover outer arrow color
307+
// Popover outer arrow width
308+
// Popover outer arrow color
307309
@popover-arrow-outer-color: @popover-bg;
308-
//** Popover distance with trigger
310+
// Popover distance with trigger
309311
@popover-distance: @popover-arrow-width + 4px;
310312

311313
// Modal

0 commit comments

Comments
 (0)