图片/图形

炫酷CSS3鼠标滑过图片标题文字动画特效

阿里云


这是一款使用 CSS3 制作的鼠标滑过图片标题文字动画特效。该特效在鼠标滑过图片的时候,会展现遮罩层,并在遮罩层上以旋转的方式使图片描述文字逐一展现。

HTML 结构

DEMO 中使用 bootstrap 的网格系统来进行布局。整个图片放置在一个.box 容器中,它里面的.box-content 是图片的描述文本层。

也想出现在这里?联系我们
创客主机
  1. <div class="box">
  2.     <img src="img/1.jpg" alt=""/>
  3.     <div class="box-content">
  4.         <h3 class="title">Kristiana</h3>
  5.         <span class="post">Earl Grey</span>
  6.         <p class="description">
  7.             Lorem ipsum dolor sit amet......
  8.         </p>
  9.         <a href="#" class="read">read more</a>
  10.     </div>
  11. </div>

CSS 样式

容器.box 的定位方式为相对定位,它里面的图片宽度为父容器的 100%宽度。

  1. .box{
  2.     border: 1px solid #333;
  3.     position: relative;
  4.     overflow: hidden;
  5. }
  6. .box img{
  7.     width: 100%;
  8.     height: auto;
  9. }

.box-content 用于制作遮罩层。颜色为 60%的黑色,定位方式为绝对定位,并使用 transform 属性将它逆时针旋转了 90 度,旋转的中心点位于左上角位置。最后为所有的动画属性设置 0.5 秒 ease 效果的过渡动画。

  1. .box .box-content{
  2.     width: 100%;
  3.     height: 100%;
  4.     position: absolute;
  5.     top: 0;
  6.     left: 0;
  7.     color: #fff;
  8.     text-align: center;
  9.     padding: 20% 20px;
  10.     background: rgba(0,0,0,0.6);
  11.     transform: rotate(-90deg);
  12.     transform-origin: left top 0;
  13.     transition: all 0.50s ease 0s;
  14. }

.title 是标题,初始状态它旋转了 180 度,旋转的中心点为右上角。并设置 0.3 秒的 ease-in-out 效果过渡动画,动画的延迟时间为 0.2 秒。

  1. .box .title{
  2.     display: inline-block;
  3.     font-size: 22px;
  4.     color: #fff;
  5.     margin: 0 0 15px 0;
  6.     position: relative;
  7.     transform: rotate(180deg);
  8.     transform-origin: right top 0;
  9.     transition: all .3s ease-in-out 0.2s;
  10. }

.post 是子标题,初始状态它旋转了 180 度,旋转的中心点为右上角。并设置 0.3 秒的 ease-in-out 效果过渡动画,动画的延迟时间为 0.4 秒。

  1. .box .post{
  2.     display: block;
  3.     font-size: 18px;
  4.     margin-bottom: 15px;
  5.     transform: rotate(180deg);
  6.     transform-origin: right top 0;
  7.     transition: all .3s ease-in-out 0.4s;
  8. }

.description 是描述文本,初始状态它旋转了 180 度,旋转的中心点为右上角。并设置 0.3 秒的 ease-in-out 效果过渡动画,动画的延迟时间为 0.6 秒。

  1. .box .description{
  2.     font-size: 15px;
  3.     margin-bottom: 20px;
  4.     padding: 0 20px;
  5.     transform: rotate(180deg);
  6.     transform-origin: right top 0;
  7.     transition: all .3s ease-in-out 0.6s;
  8. }

.read 是 Read More 文字,初始状态它旋转了 180 度,旋转的中心点为右上角。并设置 0.3 秒的 ease-in-out 效果过渡动画,动画的延迟时间为 0.8 秒。

  1. .box .read{
  2.     font-size: 20px;
  3.     font-weight: bold;
  4.     color: #fff;
  5.     display: block;
  6.     letter-spacing:2px;
  7.     text-transform: uppercase;
  8.     transform: rotate(180deg);
  9.     transform-origin: right top 0;
  10.     transition: all 0.3s ease-in-out 0.8s;
  11. }

在鼠标滑过图片时,将上面所有元素的旋转角度变为 0 度,由于各个元素上都设置了多会过渡延迟时间,所以各个元素会逐一的旋转会 0 度位置。

  1. .box .read:hover{
  2.     color: #e8802e;
  3.     text-decoration: none;
  4. }
  5. .box:hover .box-content,
  6. .box:hover .title,
  7. .box:hover .post,
  8. .box:hover .description,
  9. .box:hover .read {
  10.     transform:rotate(0deg);
  11. }

炫酷 CSS3 鼠标滑过图片标题文字动画特效

已有 361 人购买
  • c1q1
查看演示升级 VIP立刻购买

演示地址 下载地址
收藏
(0)

发表回复

热销模板

Ashade - 作品展示摄影相册WordPress汉化主题
LensNews

本站承接 WordPress / PbootCMS / DedeCMS 等
系统建站、仿站、开发、定制等业务!