Skip to content

Instantly share code, notes, and snippets.

@inetbiz
Last active November 12, 2015 06:02
Show Gist options
  • Save inetbiz/555aac08141d95f4aaf4 to your computer and use it in GitHub Desktop.
Save inetbiz/555aac08141d95f4aaf4 to your computer and use it in GitHub Desktop.
HTML5 Date Icon With Animation And Transforming Affects
<time class="icon" datetime="2014-09-20T15:00-5:00"><em>Saturday</em>
<strong>September</strong>
<span>20</span>
<i>3pm -5 GMT</i>
</time>
<style>
time.icon
{
font-size: 1em; /* change icon size */
display: block;
position: relative;
width: 16em;
height: 14em;
background-color: #fff;
margin: 2em -.5em;
border-radius: 0.6em;
box-shadow: 0 1px 0 #bdbdbd, 0 2px 0 #fff, 0 3px 0 #bdbdbd, 0 4px 0 #fff, 0 5px 0 #bdbdbd, 0 0 0 1px #bdbdbd;
overflow: hidden;
-webkit-backface-visibility: hidden;
-webkit-transform: rotate(0deg) skewY(0deg);
-webkit-transform-origin: 50% 10%;
transform-origin: 50% 10%;
transform:rotate(-10deg);
}
time.icon *
{
display: block;
width: 100%;
font-size: 1em;
font-weight: bold;
font-style: normal;
text-align: center;
}
time.icon strong
{
position: absolute;
top: 0;
padding: 0.4em 0;
color: #fff;
background-color: #fd9f1b;
border-bottom: 1px dashed #f37302;
box-shadow: 0 2px 0 #fd9f1b;
}
time.icon em
{
font-size: 2.4em;
position: absolute;
bottom: 0.6em;
color: #fd9f1b;
}
time.icon span
{
width: 100%;
font-size: 2.8em;
letter-spacing: -0.05em;
padding-top: 0.8em;
color: #2f2f2f;
}
time.icon:hover, time.icon:focus
{
-webkit-animation: swing 0.6s ease-out;
animation: swing 0.6s ease-out;
}
@-webkit-keyframes swing {
0% { -webkit-transform: rotate(0deg) skewY(0deg); }
20% { -webkit-transform: rotate(12deg) skewY(4deg); }
60% { -webkit-transform: rotate(-9deg) skewY(-3deg); }
80% { -webkit-transform: rotate(6deg) skewY(-2deg); }
100% { -webkit-transform: rotate(0deg) skewY(0deg); }
}
@keyframes swing {
0% { transform: rotate(0deg) skewY(0deg); }
20% { transform: rotate(12deg) skewY(4deg); }
60% { transform: rotate(-9deg) skewY(-3deg); }
80% { transform: rotate(6deg) skewY(-2deg); }
100% { transform: rotate(0deg) skewY(0deg); }
}
</style>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment