【发布时间】:2021-12-08 12:44:30
【问题描述】:
我目前正在使用 VueJS、SCSS 和纯 CSS 制作我的作品集。 我制作的一些元素和动画遇到了一些问题。
在 Firefox 和 Chrome 上没有问题,但在 Safari 上我使用变换旋转属性时完全出错。
查看我的网站:https://uniqode-agency.fr
让我们看一个使用以下代码制作的 3D 效果示例:
.card-container {
width: 500px;
aspect-ratio: 5/3;
margin-left: auto;
margin-right: auto;
border-radius: 20px;
box-shadow: 0 10px 40px 2px rgba(0, 0, 0, 0.4);
background: #000;
transform-origin: center center 0px;
transition: all 0.5s ease-out;
transform: perspective(1000px) rotateX(35deg) rotateY(4deg)
rotateZ(-30deg);
z-index: 1;
display: flex;
@media (max-width: 1100px) {
width: 100%;
transform: perspective(1000px) rotateX(0deg) rotateY(0deg) rotateZ(0deg);
}
@media (min-width: 1101px) {
&:hover {
margin-top: 180px;
transform: perspective(1000px) rotateX(0deg) rotateY(0deg)
rotateZ(0deg);
}
}
.card {
margin: auto;
height: min-content;
a {
color: inherit;
text-decoration: none;
}
p:not(.name) {
font-size: 1.8em;
cursor: pointer;
position: relative;
overflow: hidden;
background: linear-gradient(
to right,
rgba(67, 123, 241, 1),
rgba(238, 174, 215, 1) 50%,
white 50%
);
background-clip: text;
-webkit-text-fill-color: transparent;
background-size: 200% 100%;
background-position: 100%;
transition: background-position 0.7s cubic-bezier(0.85, 0, 0.15, 1);
margin: 5px 35px;
@media (max-width: 800px) {
font-size: 1.4em;
}
&:hover {
background-position: 0 80%;
}
}
p.name {
font-size: 1.8em;
color: white;
margin-bottom: 35px;
@media (max-width: 800px) {
font-size: 1.4em;
}
}
}
}
<div class="card-container">
<div class="card">
<p class="name">Pierre <b>Mathelin</b></p>
<a href="mailto:pierre@uniqode-agency.fr"
><p>pierre@uniqode-agency.fr</p></a
>
<a href="tel:+33756866684"><p>+33 7 56 86 66 84</p></a>
</div>
</div>
Safari 上的结果(??????):
你知道如何解决这个问题吗?
PS:我正在使用 VueJS 和 SASS 预处理器,因此通常会生成每个 -webkit-transform 或其他东西。
【问题讨论】:
标签: javascript css vue.js