plumcube 0.0.7 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/readme.md +56 -1
- data/stylesheets/_plumcube.scss +23 -2
- data/stylesheets/plumcube/_helpers.scss +5 -5
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZDdmMThiZjk3NTBmNzY4NTdkMmU0OTA5NjJiYmNlNzcyZmExZmQ2ZQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MmRiODcwMjJhZDI0NGE4NWU1MzQ5YTMxNGVjMWYzYjJhNzRkODMzYQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YTA1YWQyZTI0ZDVjYjVhZGNmZTdkNmIwZjE1MGJkYzc4MWFmYWU4OGIzMGZk
|
10
|
+
OTQzMTliYWNkNzdlMDE1YmNmZWJjNGU2OGFiNTM0Y2RhYjg5MzAyYzc3NmFj
|
11
|
+
YmY4NWUxOTg1NTY1ZjNhYWNiZmU3ZGViYjE4YzQ3MDhhYzEwYmM=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
Y2NkYjRkNGY0YzFiMWVjNmRiZDhjMDkyNDEyM2Q1NWIzNGE3MDA0MjVhYzI5
|
14
|
+
MTIyODNhZDU4NzBkMTM5ZjJlYjI5Y2RjNGE3YjAzMDVlYmFjMzI4NjBhZTg1
|
15
|
+
ZWFlZDU0MDg3NWZjOTFlYjc1YTljOWY4Yjk2ZWJkZjcxMjZhNmE=
|
data/readme.md
CHANGED
@@ -44,7 +44,7 @@ Import compass and plumcube:
|
|
44
44
|
|
45
45
|
Include the plumcube mixin in the styles of the outermost wrapper element. The plumcube mixin parameters are:
|
46
46
|
|
47
|
-
@mixin plumcube($x, $y, $z, $perspective, $origin)
|
47
|
+
@mixin plumcube($x, $y, $z, $perspective, $origin)
|
48
48
|
|
49
49
|
/* ====================================================================================
|
50
50
|
where
|
@@ -65,4 +65,59 @@ If you wanted a cube 200px x 200px x 200px, with a perspective of 1200px origina
|
|
65
65
|
margin: 100px 26%;
|
66
66
|
}
|
67
67
|
|
68
|
+
You can then apply other styling to the elements within your cube, including rotating it along one of its axes:
|
69
|
+
|
70
|
+
.cube-x {
|
71
|
+
@include transform(rotateX(10deg)); /* rotate the cube 10 degrees along the x-axis */
|
72
|
+
|
73
|
+
li {
|
74
|
+
opacity: .5; /* set opacity to see all faces of cube */
|
75
|
+
|
76
|
+
&:nth-child(1) { /* front face */
|
77
|
+
background: #f00;
|
78
|
+
}
|
79
|
+
&:nth-child(2) { /* right face */
|
80
|
+
background: #ff0;
|
81
|
+
}
|
82
|
+
&:nth-child(3) { /* back face */
|
83
|
+
background: #ff00ff;
|
84
|
+
}
|
85
|
+
&:nth-child(4) { /* left face */
|
86
|
+
background: #123456;
|
87
|
+
}
|
88
|
+
&:nth-child(5) { /* top face */
|
89
|
+
background: #dd0000;
|
90
|
+
}
|
91
|
+
&:nth-child(6) { /* bottom face */
|
92
|
+
background: #000;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
}
|
96
|
+
|
97
|
+
### Take it for a spin
|
98
|
+
After you recover from that terrible pun, you can include the `spincube` mixin in your container styles to set the cube on a continuous rotation around one or more of its axes:
|
99
|
+
|
100
|
+
@mixin spincube($axis, $speed)
|
101
|
+
|
102
|
+
/* ====================================================================================
|
103
|
+
where
|
104
|
+
$axis = axis to spin
|
105
|
+
$speed = time it takes to complete one rotation, in seconds or milliseconds
|
106
|
+
==================================================================================== */
|
107
|
+
|
108
|
+
You need to call the mixin on the container representing the axis that you want to set spinning:
|
109
|
+
|
110
|
+
.cube-x {
|
111
|
+
@include spincube(x, 200ms);
|
112
|
+
}
|
113
|
+
.cube-y {
|
114
|
+
@include spincube(y, 5s);
|
115
|
+
}
|
116
|
+
.cube-z {
|
117
|
+
@include spincube(z, 1s);
|
118
|
+
}
|
119
|
+
|
120
|
+
|
121
|
+
You can technically spin all 3 axes at once, but the animation looks best when kept simple and limited to one axis.
|
122
|
+
|
68
123
|
### Stay tuned for the next installment, in which I actually attempt to sit down and focus for long enough to complete these instructions!
|
data/stylesheets/_plumcube.scss
CHANGED
@@ -7,6 +7,18 @@ import helper functions
|
|
7
7
|
cube it up
|
8
8
|
================================================== */
|
9
9
|
@mixin plumcube($x, $y, $z, $perspective, $origin) {
|
10
|
+
/* ====================================================================================
|
11
|
+
where
|
12
|
+
$x = cube width, in pixels
|
13
|
+
$y = cube length, in pixels
|
14
|
+
$z = cube depth, in pixels
|
15
|
+
$perspective = distance of shape from screen along z-axis
|
16
|
+
(smaller numbers create more shape/perspective distortion)
|
17
|
+
$origin = defines the origin of the 3D perspective
|
18
|
+
(see https://developer.mozilla.org/en-US/docs/Web/CSS/perspective-origin
|
19
|
+
for all possible values)
|
20
|
+
==================================================================================== */
|
21
|
+
|
10
22
|
@include perspective($perspective+px);
|
11
23
|
@include perspective-origin($origin);
|
12
24
|
width: $x + px;
|
@@ -64,6 +76,15 @@ cube it up
|
|
64
76
|
/* ==================================================
|
65
77
|
360-degree cube rotation
|
66
78
|
================================================== */
|
67
|
-
@mixin spincube($
|
68
|
-
|
79
|
+
@mixin spincube($axis, $speed, $reverse:"") {
|
80
|
+
/* ====================================================================================
|
81
|
+
where
|
82
|
+
$axis = axis to spin
|
83
|
+
$speed = time it takes to complete one rotation, in seconds or milliseconds
|
84
|
+
==================================================================================== */
|
85
|
+
@if $reverse != "" {
|
86
|
+
@include private-animation(spin+to_upper_case($axis) $speed linear infinite reverse);
|
87
|
+
} @else {
|
88
|
+
@include private-animation(spin+to_upper_case($axis) $speed linear infinite);
|
89
|
+
}
|
69
90
|
}
|
@@ -20,8 +20,8 @@ animation property builder -> adds -webkit prefix
|
|
20
20
|
/* ==================================================
|
21
21
|
css transform for 360-degree spin
|
22
22
|
================================================== */
|
23
|
-
@mixin
|
24
|
-
@include private-keyframes(
|
23
|
+
@mixin spin($axis) {
|
24
|
+
@include private-keyframes(spin+$axis) {
|
25
25
|
from {
|
26
26
|
@include transform(rotate+$axis+'(0deg)');
|
27
27
|
}
|
@@ -34,6 +34,6 @@ css transform for 360-degree spin
|
|
34
34
|
/* ==================================================
|
35
35
|
define 360-degree spin for each axis
|
36
36
|
================================================== */
|
37
|
-
@include
|
38
|
-
@include
|
39
|
-
@include
|
37
|
+
@include spin(X);
|
38
|
+
@include spin(Y);
|
39
|
+
@include spin(Z);
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: plumcube
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephanie Plumeri
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-07-
|
11
|
+
date: 2013-07-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sass
|