gpt4 book ai didi

CSS 动画 : loading

转载 作者:行者123 更新时间:2023-11-28 02:15:03 28 4
gpt4 key购买 nike

目前正在学习HTML/CSS3基础知识,来到过渡/动画章节。为了测试我对这个主题的理解,我给自己提出了一个挑战:创建一个由纯 CSS 动画制作的加载页面。

充电条由 5 个带有红色边框的白色矩形组成,每 0,1 变为红色表示正在充电,在循环结束时再次变黑并重复。

所以我首先尝试创建一个动画,白色第一个矩形的背景颜色在 0,5s 动画的 20% 处变为红色,依此类推......它失败了,因为我不知道如何在同一动画中更改多个元素。然后我发现让每个矩形从状态“blanck”变为状态“red”会更容易,尽管它需要更多的代码行。

唯一的问题是,正如您在下面的代码中看到的那样,第一个矩形不会变红,而其他矩形会变红,我可以让它在最后倒退。

谁能给我一个关于如何使这个过渡起作用的线索,然后给我一个关于如何使它与动画一起起作用的提示/文档?

    <!DOCTYPE html>
<html>
<head>
<title>Loading</title>
<link rel="stylesheet" type="text/css" href="loading.css">
</head>

<body>
<div class="big_div">

<div id="title"> <p class="main_title"> L O A D I N G</p> </div>

<div class="carre" id="premiers_carre"></div>
<div class="carre" id="deuxieme_carre"></div>
<div class="carre" id="troisieme_carre"></div>
<div class="carre" id="quatrieme_carre"></div>
<div class="carre" id="cinquieme_carre"></div>


</div>
</body>
</html>


p
{
font-family: "Press start 2P";
}

#title {
position: absolute;
left : 530px;
top : 280px ;
}

.big_div
{
width: 1250px;
height: 700px;

display :flex;
flex-direction : row;
justify-content: center;
align-items: center;

}

.carre
{
background-color: white;
border: 1px red solid;

width: 80px;
height: 10px;
margin-right: 5px;

}

#premier_carre
{
transition-property: background-color;
transition-delay: 0.1s;
}

#deuxieme_carre
{
transition-property: background-color;
transition-delay: 0.2s;
}

#troisieme_carre
{
transition-property: background-color;
transition-delay: 0.3s;
}

#quatrieme_carre
{
transition-property: background-color;
transition-delay: 0.4s;
}

#cinquieme_carre
{
transition-property: background-color;
transition-delay: 0.5s;
}

.big_div:hover #premier_carre
{
background-color: red;

}

.big_div:hover #deuxieme_carre
{
background-color: red;

}

.big_div:hover #troisieme_carre
{
background-color: red;

}

.big_div:hover #quatrieme_carre
{
background-color: red;

}

.big_div:hover #cinquieme_carre
{
background-color: red;

}

最佳答案

您好!您在代码中编写了 id="premiers_carre",在 CSS 中编写了 #premier_carre。就这么简单。

这里是您的代码修复和改进更干的方法(你定义了一个类,为什么不使用它?):

p
{
font-family: "Press start 2P";
}

#title {
position: absolute;
left : 530px;
top : 280px ;
}

.big_div
{
width: 1250px;
height: 700px;

display :flex;
flex-direction : row;
justify-content: center;
align-items: center;

}

.carre
{
background-color: white;
border: 1px red solid;

width: 80px;
height: 10px;
margin-right: 5px;

transition-property: background-color;
}

#premier_carre
{
transition-delay: 0.1s;
}

#deuxieme_carre
{
transition-delay: 0.2s;
}

#troisieme_carre
{
transition-delay: 0.3s;
}

#quatrieme_carre
{
transition-delay: 0.4s;
}

#cinquieme_carre
{
transition-delay: 0.5s;
}

.big_div:hover .carre
{
background-color: red;

}
<!DOCTYPE html>
<html>
<head>
<title>Loading</title>
<link rel="stylesheet" type="text/css" href="loading.css">
</head>

<body>
<div class="big_div">

<div id="title"> <p class="main_title"> L O A D I N G</p> </div>

<div class="carre" id="premier_carre"></div>
<div class="carre" id="deuxieme_carre"></div>
<div class="carre" id="troisieme_carre"></div>
<div class="carre" id="quatrieme_carre"></div>
<div class="carre" id="cinquieme_carre"></div>


</div>
</body>
</html>

关于CSS 动画 : loading,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48525474/

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