如何在多个图像上添加内容?
How to add content over multiple images?
我有一个网页,其中我使用 css 交叉淡入淡出动画在两个背景图像之间淡入淡出。现在,我需要在两个图像上方添加相同的内容(徽标和按钮)。但是,此内容仅对第一张图片可见,第二张图片不可见。
这是我的代码:
index.html
<div id="bgimg">
<div class="bgimg-container">
<div id="hero">
<div class="bgimg-container">
My content here
</div>
</div>
</div>
</div>
style.css
#bgimg{
display: table;
background: url(../img/2.jpg);
width:100%;
height:100vh;
background-position: top center;
background-size: cover;
background-repeat: no-repeat;
}
#hero {
display: table;
width: 100%;
height: 100vh;
background: url(../img/1.jpg);
background-position: top center;
background-size: cover;
background-repeat: no-repeat;
animation-name: cf3FadeInOut;
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
animation-duration: 7s;
animation-direction: alternate;
}
@keyframes cf3FadeInOut {
0% {opacity:1;}
45% {opacity:1;}
55% {opacity:0;}
100% {opacity:0;}
}
@media (min-width: 1024px) {
#hero, #bgimg {
background-attachment: fixed;
}
}
#hero .hero-logo {
margin: 20px;
}
#hero .hero-logo img {
max-width: 100%;
}
#hero .hero-container {
background: rgba(0, 0, 0, 0.8);
display: table-cell;
margin: 0;
padding: 0;
text-align: center;
vertical-align: middle;
}
#bgimg .bgimg-container {
background: rgba(0, 0, 0, 0.8);
display: table-cell;
margin: 0;
padding: 0;
text-align: center;
vertical-align: middle;
}
我已经筋疲力尽地想弄明白了。新来的,请帮忙。
给你:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.img1 {
background: #e12;
position: absolute;
top: 0;
left: 0;
}
.img2:hover {
opacity: 0;
transition: .5s;
}
.img2 {
background: #312;
position: absolute;
top: 0;
left: 0;
transition: .5s;
}
.img1, .img2 { /* other - for demo */
color: white;
width: 100px;
height: 100px;
width: 100px;
height: 100px;
}
</style>
</head>
<body>
<div class="img1"></div>
<div class="img2">Hello World</div>
</body>
</html>
更改图像的背景,或者如果您想使用 img 标签,请将每个 img 标签放在 div
中
这里有一个工作示例,也许可以用它来修改您的代码;
@keyframes cf3FadeInOut {
0% {
opacity: 1;
}
45% {
opacity: 1;
}
55% {
opacity: 0;
}
100% {
opacity: 0;
}
}
.img-container,
.bg-img-1,
.bg-img-2,
.content {
height: 100vh;
width: 100vw;
}
.img-container {
position: relative;
}
.bg-img-1 {
background-image: url('https://images.pexels.com/photos/1509428/pexels-photo-1509428.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940');
background-size: cover;
position: absolute;
}
.bg-img-2 {
background-image: url('https://images.pexels.com/photos/886465/pexels-photo-886465.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940');
position: absolute;
background-size: cover;
animation-name: cf3FadeInOut;
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
animation-duration: 3s;
animation-direction: alternate;
}
.content {
background-color: rgba(0,0,0,0.5);
color: #fff;
position: absolute;
display: flex;
justify-content: center;
align-items: center;
}
<div class="img-container">
<div class="bg-img-1"></div>
<div class="bg-img-2"></div>
<div class="content">
<div>
hello <button>world</button>
</div>
</div>
<div>
我有一个网页,其中我使用 css 交叉淡入淡出动画在两个背景图像之间淡入淡出。现在,我需要在两个图像上方添加相同的内容(徽标和按钮)。但是,此内容仅对第一张图片可见,第二张图片不可见。 这是我的代码:
index.html
<div id="bgimg">
<div class="bgimg-container">
<div id="hero">
<div class="bgimg-container">
My content here
</div>
</div>
</div>
</div>
style.css
#bgimg{
display: table;
background: url(../img/2.jpg);
width:100%;
height:100vh;
background-position: top center;
background-size: cover;
background-repeat: no-repeat;
}
#hero {
display: table;
width: 100%;
height: 100vh;
background: url(../img/1.jpg);
background-position: top center;
background-size: cover;
background-repeat: no-repeat;
animation-name: cf3FadeInOut;
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
animation-duration: 7s;
animation-direction: alternate;
}
@keyframes cf3FadeInOut {
0% {opacity:1;}
45% {opacity:1;}
55% {opacity:0;}
100% {opacity:0;}
}
@media (min-width: 1024px) {
#hero, #bgimg {
background-attachment: fixed;
}
}
#hero .hero-logo {
margin: 20px;
}
#hero .hero-logo img {
max-width: 100%;
}
#hero .hero-container {
background: rgba(0, 0, 0, 0.8);
display: table-cell;
margin: 0;
padding: 0;
text-align: center;
vertical-align: middle;
}
#bgimg .bgimg-container {
background: rgba(0, 0, 0, 0.8);
display: table-cell;
margin: 0;
padding: 0;
text-align: center;
vertical-align: middle;
}
我已经筋疲力尽地想弄明白了。新来的,请帮忙。
给你:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
.img1 {
background: #e12;
position: absolute;
top: 0;
left: 0;
}
.img2:hover {
opacity: 0;
transition: .5s;
}
.img2 {
background: #312;
position: absolute;
top: 0;
left: 0;
transition: .5s;
}
.img1, .img2 { /* other - for demo */
color: white;
width: 100px;
height: 100px;
width: 100px;
height: 100px;
}
</style>
</head>
<body>
<div class="img1"></div>
<div class="img2">Hello World</div>
</body>
</html>
更改图像的背景,或者如果您想使用 img 标签,请将每个 img 标签放在 div
中这里有一个工作示例,也许可以用它来修改您的代码;
@keyframes cf3FadeInOut {
0% {
opacity: 1;
}
45% {
opacity: 1;
}
55% {
opacity: 0;
}
100% {
opacity: 0;
}
}
.img-container,
.bg-img-1,
.bg-img-2,
.content {
height: 100vh;
width: 100vw;
}
.img-container {
position: relative;
}
.bg-img-1 {
background-image: url('https://images.pexels.com/photos/1509428/pexels-photo-1509428.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940');
background-size: cover;
position: absolute;
}
.bg-img-2 {
background-image: url('https://images.pexels.com/photos/886465/pexels-photo-886465.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940');
position: absolute;
background-size: cover;
animation-name: cf3FadeInOut;
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
animation-duration: 3s;
animation-direction: alternate;
}
.content {
background-color: rgba(0,0,0,0.5);
color: #fff;
position: absolute;
display: flex;
justify-content: center;
align-items: center;
}
<div class="img-container">
<div class="bg-img-1"></div>
<div class="bg-img-2"></div>
<div class="content">
<div>
hello <button>world</button>
</div>
</div>
<div>