【每日一练】09—透明列表Hove效果的实现

dea547034912de2d529ea8ae130ebe80.png

作者 | 杨小爱

写在前面

今天我们开始第9天的小项目练习,今天这个小练习比较简单,主要就是一个比较常见的列表卡效果,这个列表的实现方法很多。

我们很多时候在项目上使用列表效果,会让我们的内容结构比较清晰,富有层次,我希望今天这个练习,你一定要学会。

现在,我们就一起来看看今天练习的最终效果:56c04a24bf04d54b3288809f25e8680f.png

左边图为页面加载完的效果,右边图为鼠标悬停的hover效果。

练习中的图片素材,我在【每日一练】07—CSS实现响应式产品介绍的Hover效果这里分享过了,这些图片可以重复使用练习。因此,今天我就不再单独上传图片素材了。

以下是HTML代码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>【每日一练】09—透明列表hover效果的实现</title>
</head>
<body>
  <section>
    <div class="box">
      <h3>优秀自媒体前十专家排行榜</h3>
      <div class="list">
        <div class="imgBx">
          <img src="img1.jpg">
        </div>
        <div class="content">
          <h2 class="rank">1</h2>
          <h4>王二</h4>
          <p>前端开发工程师</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img2.jpg">
        </div>
        <div class="content">
          <h2 class="rank">2</h2>
          <h4>张三</h4>
          <p>后端开发工程师</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img3.jpg">
        </div>
        <div class="content">
          <h2 class="rank">3</h2>
          <h4>李四</h4>
          <p>Photoshop专家</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img4.jpg">
        </div>
        <div class="content">
          <h2 class="rank">4</h2>
          <h4>王五</h4>
          <p>Illustrator专家</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img5.jpg">
        </div>
        <div class="content">
          <h2 class="rank">5</h2>
          <h4>赵六</h4>
          <p>视频剪辑专家</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img6.jpg">
        </div>
        <div class="content">
          <h2 class="rank">6</h2>
          <h4>甄七</h4>
          <p>CSS技术专家</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img7.jpg">
        </div>
        <div class="content">
          <h2 class="rank">7</h2>
          <h4>郭八</h4>
          <p>web前端开发技术专家</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img8.jpg">
        </div>
        <div class="content">
          <h2 class="rank">8</h2>
          <h4>廖九</h4>
          <p>Vue技术专家</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img9.jpg">
        </div>
        <div class="content">
          <h2 class="rank">9</h2>
          <h4>JavaScript大叔</h4>
          <p>JavaScript技术专家</p>
        </div>
      </div>
      <div class="list">
        <div class="imgBx">
          <img src="img10.jpg">
        </div>
        <div class="content">
          <h2 class="rank">10</h2>
          <h4>杨小爱</h4>
          <p>吃货博主专家</p>
        </div>
      </div>
    </div>
  </section>
</body>
</html>

CSS代码:

*
{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}
section 
{
  position: relative;
  background: #00a6bc;
  min-height: 100vh;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}


.box
{
  position: relative;
  min-width: 350px;
  min-height: 400px;
  background: rgba(255,255,255,0.1);
  box-shadow: 0 25px 45px rgba(0,0,0,0.1);
  border: 1px solid rgba(255,255,255,0.5);
  border-right: 1px solid rgba(255,255,255,0.2);
  border-bottom: 1px solid rgba(255,255,255,0.2);
  border-radius: 10px;
  z-index: 10;
  padding: 20px;
  backdrop-filter: blur(25px);
}
.box h3
{
  color: #fff;
  margin-bottom: 20px;
}
.box .list 
{
  position: relative;
  display: flex;
  padding: 10px;
  background: rgba(0,0,0,0.1);
  border-radius: 10px;
  margin: 10px 0;
  cursor: pointer;
  transition: 0.5s;
  overflow: hidden;
}
.box .list:hover 
{
  background: #fff;
  box-shadow: -15px 30px 50px rgba(0,0,0,0.5);
  transform: scale(1.15) translateX(30px) translateY(-15px);
  z-index: 1000;
}
.box .list .imgBx 
{
  position: relative;
  width: 60px;
  height: 60px;
  border-radius: 10px;
  overflow: hidden;
  margin-right: 10px;
}
.box .list .imgBx img 
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.box .list .content 
{
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
}
.box .list .content .rank 
{
  position: absolute;
  right: -50px;
  color: #00a6bc;
  transition: 0.5s;
  font-size: 2em;
}
.box .list:hover .content .rank 
{
  right: 20px;
}
.box .list .content h4 
{
  line-height: 1.2em;
  font-weight: 600;
  transition: 0.5s;
}
.box .list .content p
{
  font-size: 0.75em;
  transition: 0.5s;
}
.box .list:hover .content h4,
.box .list:hover .content p 
{
  color: #333;
}

写在最后

以上就是每日一练的全部内容,希望今天的小练习对你有用,如果你觉得有帮助的话,请点赞我,关注我,并将它分享给你身边做开发的朋友,也许能够帮助到他。

我是杨小爱,我们明天见。

学习更多技能

请点击下方公众号

46b20454c1b4b02bd3e3324386074ce7.gif

2343799e50ab2805e6595e5f982da421.png

c5adbf76597a797659c3b90f2da74e9c.png

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值