gpt4 book ai didi

html - CSS 横向扩展和淡入淡出效果

转载 作者:搜寻专家 更新时间:2023-10-31 08:43:26 24 4
gpt4 key购买 nike

我正在尝试在单击链接时在叠加层上重新创建以下效果(单击此页面上的一种颜色以了解我的意思:http://flatuicolors.com)。

过渡是这样的:带有成功消息的叠加层向外扩展并淡入,暂停然后向外扩展并淡出。

但是,它并没有产生预期的效果。更重要的是,缩放根本不可见。非常感谢任何帮助。

html, body { height: 100%; }
.container {
position: relative;
margin: 0 auto; }
.container.questionnaire {
background:#f1c40f;
width: 100%;
max-width: 100%;
height: 100%;
}
.row-flex.buttons-only {
height:100%;}
.row-flex {
display: table;
width: 100%; }
.column {
box-sizing: border-box; }
.one-third-flex.column {
width: 33.3333%;
display: table-cell;
text-align: center;
vertical-align: middle;
float: none; }
.overlay {
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
display: table;
background-color:#1abc9c;
z-index: 10;
}
h1.success-message { display: table-cell; text-align: center;
vertical-align: middle;}

.animated {
-webkit-animation-duration: 2s;
animation-duration: 2s;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}

@-webkit-keyframes fadeOut {
0% {visibility:visible; opacity: 1;transform: scale(2);}
40% {opacity: 1;transform: scale(1.5);}
60% {opacity: 1;transform: scale(1.5);}
100% {visibility:hidden; opacity: 0;transform: scale(1);}
}
@keyframes fadeOut {
0% {visibility:visible; opacity: 1; transform: scale(2);}
40% {opacity: 1;transform: scale(1.5);}
60% {opacity: 1;transform: scale(1.5);}
100% {visibility:hidden;opacity: 0; transform: scale(1);}
}
.fadeOut {
-webkit-animation-name: fadeOut;
animation-name: fadeOut;
}
<body>

<div class="overlay animated fadeOut"><h1 class="success-message">Success</h1></div>
<div class="container questionnaire">
<div class="row row-flex buttons-only">
<div class="one-third-flex column"></div>
<div class="one-third-flex column" style="background-color: #f4f4f4;">
<div role="button" class="ico-btn btn-settings-lg"><a href="#">CLICK</a>
</div>
</div>
<div class="one-third-flex column"></div>
</div>
</div>
</body>

最佳答案

好吧,我希望这个回答能对你有所帮助。

因为我认为这是一个有趣的效果(使用 flash 创建),所以我使用 css3 和 jquery 从头开始​​创建它。对我来说,编写我的代码比尝试修改您的代码更容易,这就是为什么它可能对您没有用,但也许对其他用户有用。

html 很简单:

<div class="square ">
</div>
<div class="effect ">
<div class="text">TEXT HERE</div>
</div>

其中square是点击的区域,effect是动画的容器,是一个高度和宽度都为0的div,放在窗口的中心如果您想添加更多动画(使其“增长”或缩小)。

还有一些简单的 jquery:

$('. square).click(function () {
$('. effect).addClass("animation");
$('.text').addClass("text-effect");
setTimeout(function () {
$('. effect).removeClass("animation");
$('.text').removeClass("text-effect");
}, 1500);
});

在点击时为effecttext 添加一个类,并在动画完成后将其删除

然后在一些基本的 CSS 样式之后,我为 effect 制作了动画:

.animation {
animation-name: background;
animation-duration: 1.5s;
animation-timing-function: linear;
animation-delay: 0s;
animation-iteration-count: 1;
}
@keyframes background {
0% {height:100%; width:100%; opacity:1}
80% {height:100%; width:100%; opacity:1}
99.999% {height:100%; width:100%; opacity:0}
100% {height:0; width:0; opacity:0}
}

对于 text 我刚刚使用了一个过渡:

.text {
background-color:rgba(255,255,255,0.6);
width:100%;
text-align:center;
font-size:50px;
color:#fff;
font-weignt:bold;
text-shadow: 1px 1px 0 #000000;
font-family:arial;
padding:20px 0;
transition:all 0.2s linear;
position:absolute;
top:50%;
transform: translateY(-50%);
transition:all 0.2s linear;
}

.text-effect {
padding:10px 0;
font-size:40px;
}

全部放在一起并添加 8 个不同颜色的方 block :

JSFIDDLE

而且,正如我在上面所写的那样,背景随着

逐渐淡化和缩小
@keyframes background {
0% {height:100%; width:100%; opacity:1}
80% {height:100%; width:100%; opacity:1}
100% {height:0; width:0; opacity:0}
}

JSFIDDLE2

关于html - CSS 横向扩展和淡入淡出效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32732496/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com