要实现这个效果,可以使用CSS的:hover伪类和transform属性来翻转图片,使用position属性、absolute和z-index属性以及div元素来添加蒙版并显示文字。以下是一个示例代码:
HTML代码:
<div class="image-container"> <img src="your-image-url" alt="Your Image"> <div class="overlay-text">这是蒙版上的文字</div> </div>
CSS代码:
.image-container { position: relative; /* 设置容器为相对定位 */ width: 200px; /* 设置容器宽度,根据实际情况进行调整 */ height: 200px; /* 设置容器高度,根据实际情况进行调整 */ } .image-container img { width: 100%; /* 设置图片宽度 */ height: auto; /* 设置图片高度自动适应宽度 */ transition: transform 0.3s ease-in-out; /* 设置过渡效果,使翻转更加平滑 */ } .image-container:hover img { transform: rotateY(180deg); /* 设置鼠标放上去时图片翻转180度 */ } .overlay-text { position: absolute; /* 设置蒙版为绝对定位 */ top: 0; /* 设置蒙版顶部与容器顶部对齐 */ left: 0; /* 设置蒙版左侧与容器左侧对齐 */ width: 100%; /* 设置蒙版宽度与容器宽度一致 */ height: 100%; /* 设置蒙版高度与容器高度一致 */ background-color: rgba(0, 0, 0, 0.5); /* 设置蒙版的背景颜色和透明度 */ color: white; /* 设置蒙版上的文字颜色为白色 */ display: flex; /* 设置蒙版上的文字为flex布局 */ justify-content: center; /* 设置文字水平居中 */ align-items: center; /* 设置文字垂直居中 */ z-index: 2; /* 设置蒙版的层级比图片高 */ }
在上面的示例代码中,我们首先设置了一个包含图片和蒙版的容器,并使用position
属性将蒙版设置为绝对定位,使用top
和left
属性将其顶部和左侧与容器对齐。然后,我们设置图片的宽度为容器的100%,并使用transform
属性将其翻转180度。使用:hover
伪类选择器,在鼠标放上去时应用transform
属性。同时,我们设置了蒙版的背景颜色和透明度,使其半透明,并且设置了蒙版上的文字颜色、布局、居中和层级。这样就可以实现当鼠标放上去时,图片翻转并蒙上一层蒙版,蒙版上显示一段文字的效果。