| | |
| | | <view class="contact-details"> |
| | | <text class="contact-name">{{ selectedContact.nickName }}</text> |
| | | </view> |
| | | <u-icon name="close" size="16" color="#999" @click="clearSelected" /> |
| | | <van-icon name="cross" size="16" color="#999" @click="clearSelected" /> |
| | | </view> |
| | | </view> |
| | | |
| | |
| | | transform: scale(1.2); |
| | | opacity: 0; |
| | | } |
| | | } |
| | | </style> |
| | | |
| | | <style lang="scss"> |
| | | /* 更新样式类名 */ |
| | | :deep(.u-radio) { |
| | | .u-radio__icon { |
| | | width: 20px; |
| | | height: 20px; |
| | | border: 2px solid #ddd; |
| | | border-radius: 50%; |
| | | background: #fff; |
| | | position: relative; |
| | | transition: all 0.2s; |
| | | |
| | | &::before { |
| | | content: ''; |
| | | position: absolute; |
| | | top: 50%; |
| | | left: 50%; |
| | | transform: translate(-50%, -50%) scale(0); |
| | | width: 8px; |
| | | height: 8px; |
| | | background: #006cfb; |
| | | border-radius: 50%; |
| | | transition: transform 0.2s; |
| | | } |
| | | } |
| | | |
| | | &.u-radio--checked { |
| | | .u-radio__icon { |
| | | border-color: #006cfb; |
| | | background: #fff; |
| | | |
| | | &::before { |
| | | transform: translate(-50%, -50%) scale(1); |
| | | } |
| | | |
| | | &::after { |
| | | content: ''; |
| | | position: absolute; |
| | | top: -2px; |
| | | left: -2px; |
| | | right: -2px; |
| | | bottom: -2px; |
| | | border: 2px solid rgba(0, 108, 251, 0.2); |
| | | border-radius: 50%; |
| | | animation: ripple 0.6s ease-out; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |