feat: 优化语音输入时的样式和输入框

This commit is contained in:
zhangyh
2025-10-17 17:09:33 +08:00
parent a856070570
commit 8994b4a1d2
4 changed files with 147 additions and 79 deletions

View File

@@ -11,15 +11,7 @@
<div class="carousel-container">
<!-- 左箭头 -->
<div class="nav-arrow left" @click="handleChangeSwiper('prev')">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
<path
d="M15 18L9 12L15 6"
stroke="white"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
/>
</svg>
<van-icon name="arrow-left" color="#fff" size="40" />
</div>
<van-swipe touchable ref="swiperRef">
@@ -37,7 +29,8 @@
</van-swipe>
<div class="nav-arrow right" @click="handleChangeSwiper('next')">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none">
<van-icon name="arrow" color="#fff" size="40" />
<!-- <svg width="15" height="26" viewBox="0 0 24 24" fill="none">
<path
d="M9 18L15 12L9 6"
stroke="white"
@@ -45,7 +38,7 @@
stroke-linecap="round"
stroke-linejoin="round"
/>
</svg>
</svg> -->
</div>
</div>
</div>
@@ -182,8 +175,8 @@ watch(showVideo, (newValue) => {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 5rem;
height: 5rem;
width: 8.6rem;
height: 8.4rem;
background: rgba(255, 255, 255, 0.15);
border-radius: 50%;
display: flex;
@@ -192,15 +185,9 @@ watch(showVideo, (newValue) => {
cursor: pointer;
transition: all 0.3s ease;
z-index: 3;
box-shadow: 0 0.4rem 0.8rem rgba(0, 0, 0, 0.2), 0 0.2rem 0.4rem rgba(0, 0, 0, 0.1),
inset 0 0.1rem 0.2rem rgba(255, 255, 255, 0.3);
box-shadow: 0 2rem 2.5rem rgba(0, 0, 0, 0.25), 0 0 6rem rgba(0, 0, 0, 0.25);
border: 0.1rem solid rgba(255, 255, 255, 0.2);
&:active {
transform: translateY(-50%) scale(0.95);
box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2), inset 0 0.1rem 0.2rem rgba(0, 0, 0, 0.1);
}
filter: drop-shadow(2px 4px 6.6px rgba(0, 0, 0, 0.25));
&.left {
left: 1rem;
}
@@ -223,6 +210,15 @@ watch(showVideo, (newValue) => {
flex-direction: column;
align-items: center;
padding: 4.25rem 0 2.65rem;
background: radial-gradient(
100% 100% at 0% 0%,
rgba(115, 115, 115, 0.4) 0%,
rgba(115, 115, 115, 0.2) 50%,
rgba(0, 0, 0, 0) 100%
);
backdrop-filter: blur(35px);
overflow: hidden;
position: relative;
img {
width: 59rem;
height: 63rem;
@@ -283,7 +279,7 @@ watch(showVideo, (newValue) => {
:deep(.video-dialog) {
width: 80%;
background: rgba(0, 0, 0, 0.3);
.close-btn {
width: 8.6rem;
height: 8.4rem;
@@ -299,27 +295,21 @@ watch(showVideo, (newValue) => {
cursor: pointer;
backdrop-filter: blur(1rem);
border: 1px solid rgba(255, 255, 255, 0.3);
box-shadow:
0 0.8rem 1.6rem rgba(0, 0, 0, 0.4),
inset 0 0.2rem 0.4rem rgba(255, 255, 255, 0.1),
box-shadow: 0 0.8rem 1.6rem rgba(0, 0, 0, 0.4), inset 0 0.2rem 0.4rem rgba(255, 255, 255, 0.1),
inset 0 -0.2rem 0.4rem rgba(0, 0, 0, 0.3);
transition: all 0.3s ease;
&:hover {
transform: translateY(-0.2rem);
box-shadow:
0 1.2rem 2.4rem rgba(0, 0, 0, 0.5),
inset 0 0.2rem 0.4rem rgba(255, 255, 255, 0.15),
inset 0 -0.2rem 0.4rem rgba(0, 0, 0, 0.4);
box-shadow: 0 1.2rem 2.4rem rgba(0, 0, 0, 0.5),
inset 0 0.2rem 0.4rem rgba(255, 255, 255, 0.15), inset 0 -0.2rem 0.4rem rgba(0, 0, 0, 0.4);
}
&:active {
transform: translateY(0.1rem);
box-shadow:
0 0.4rem 0.8rem rgba(0, 0, 0, 0.3),
inset 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2);
box-shadow: 0 0.4rem 0.8rem rgba(0, 0, 0, 0.3), inset 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2);
}
.close-icon {
color: white;
font-size: 2.4rem;