Html5 CSS3悬停图片分割放大特效插件

Html5 CSS3悬停图片分割放大特效插件

这是一款html5基于css3属性制作网格图片悬停放大分割展示动画特效。

使用方法
在页面引入以下CSS样式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<style>
.splitting-image {
  background-size: 0% 0%;
  position: relative;
  overflow: hidden;
}
 
.splitting-image img {
  display: block;
}
 
@supports (--row-size: calc( 100% / 2 )) {
  .splitting-image {
    background-size: cover;
    visibility: hidden;
    --row-size: calc(100% / var(--row-total));
    --col-size: calc(100% / var(--col-total));
  }
 
  .split-cell {
    background: inherit;
    position: absolute;
    overflow: hidden;
    top: calc(var(--row-size) * var(--row-index));
    left: calc(var(--col-size) * var(--col-index));
    width: calc(0.5px + var(--col-size));
    height: calc(0.5px + var(--row-size));
  }
 
  .split-cell__inner {
    position: absolute;
    visibility: visible;
    background: inherit;
    width: calc(100% * var(--col-total));
    height: calc(100% * var(--row-total));
    transform: translate(
      calc(-1 * var(--col-size) * var(--col-index)),
      calc(-1 * var(--row-size) * var(--row-index))
    );
  }
}
.tiler {
  position: relative;
  display: inline-block;
  cursor: pointer;
  visibility: hidden;
  width: 33.3%;
  margin: auto;
}
 
.tiler img {
  display: block;
  margin: auto;
  max-width: 100%;
  visibility: visible;
}
 
.tiler-overlay {
  background-position: center center;
  margin: auto;
  position: fixed;
  top: 1em;
  bottom: 1em;
  left: 1em;
  right: 1em;
  max-width: 1000px;
  max-height: 600px;
  -webkit-perspective: 30px;
          perspective: 30px;
}
 
.tiler-overlay .split-cell {
  pointer-events: none;
  opacity: 0;
  -webkit-transform: translateZ(-15px);
          transform: translateZ(-15px);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  transition-duration: 0.5s, 0.4s;
  transition-timing-function: cubic-bezier(0.65, 0.01, 0.15, 1.33);
  /* The center character index */
  --center-x: calc((var(--col-total) - 1) / 2);
  --center-y: calc((var(--row-total) - 1) / 2);
  /* Offset from center, positive & negative */
  --offset-x: calc(var(--col-index) - var(--center-x));
  --offset-y: calc(var(--row-index) - var(--center-y));
  /* Absolute distance from center, only positive */
  --distance-x: calc(
    (var(--offset-x) * var(--offset-x)) / var(--center-x)
  );
  /* Absolute distance from center, only positive */
  --distance-y: calc(
    (var(--offset-y) * var(--offset-y)) / var(--center-y)
  );
  transition-delay: calc( 0.1s * var(--distance-y) + 0.1s * var(--distance-x) );
}
 
.tiler-overlay {
  z-index: 2;
}
 
.tiler:hover .split-cell {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}
 
html {
  height: 100%;
  display: flex;
  background: #323643;
}
 
body {
  display: flex;
  flex-wrap: wrap;
  max-width: 800px;
  padding: 2em;
  margin: auto;
}
</style>

文件信息:

    1

    发表评论