Creating A TV Shutdown Effect with CSS3 Transitions and Transforms
| File Size: | 2.31 KB |
|---|---|
| Views Total: | 5829 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
A nice-looking TV interface with a fancy TV shutdown effect when you click the toggle link, build in jQuery and CSS3 transitions & transforms.
How to use it:
1. Create the Html for a TV screen that you can embed any video into it.
<div class="tv">
<div class="screen-inner">
<div class="screen-content">
<iframe src="//player.vimeo.com/video/25323516?title=0&byline=0&portrait=0&autoplay=1" width="590" height="330" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
</div>
</div>
<div class="tv-panel">
<div class="tv-panel__indicators"> <span></span> <span></span> <span></span> </div>
<div class="tv-panel__buttons"> <span></span> <span></span> <span></span> <span></span> </div>
</div>
</div>
2. The sample CSS to style the TV screen.
.tv {
width: 100%;
height: 400px;
margin: 15px 0 0 0;
position: relative;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
background: #231f20;
-webkit-box-shadow: 13px 13px rgba(0, 0, 0, 0.16);
box-shadow: 13px 13px rgba(0, 0, 0, 0.16);
}
.screen-inner {
width: 590px;
height: 330px;
position: absolute;
top: 15px;
left: 15px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
background-color: black;
overflow: hidden;
}
.screen-content {
width: 100%;
height: 100%;
position: relative;
-webkit-background-size: cover;
background-size: cover;
background-position: center center;
}
.screen-content:after {
width: 100%;
height: 100%;
content: "";
position: absolute;
background: white;
opacity: 0;
left: 0;
top: 0;
}
.tv-panel {
height: 40px;
width: 100%;
background: #343434;
position: absolute;
bottom: 0;
left: 0;
}
.tv-panel__indicators {
position: absolute;
left: 6px;
bottom: 5px;
font-size: 0;
}
.tv-panel__indicators SPAN {
background: #fa4c4c;
width: 3px;
height: 3px;
margin: 0 4px 0 0;
border-radius: 100%;
display: inline-block;
-webkit-transition: background 150ms ease;
transition: background 150ms ease;
}
.tv-panel__buttons {
position: absolute;
left: 50%;
margin: 0 0 0 -32px;
bottom: 16px;
font-size: 0;
}
.tv-panel__buttons SPAN {
background: #222222;
width: 14px;
height: 7px;
margin: 0 3px 0 0;
display: inline-block;
-webkit-transition: background 150ms ease;
transition: background 150ms ease;
}
3. Create a link to close the video with a TV shutdown effect.
<a href="#" class="js-shtd-btn">Click me!</a>
4. The required CSS styles for the TV shutdown effect.
.tv._off .screen-content {
-webkit-animation: shutdown 400ms linear;
animation: shutdown 400ms linear;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
.tv._off .screen-content:after {
-webkit-animation: shutdown-opa 400ms linear;
animation: shutdown-opa 400ms linear;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
.tv._off .tv-panel__indicators SPAN { background: #8f8875; }
@-webkit-keyframes
shutdown { 0% {
-webkit-transform: scale3d(1, 1, 1);
transform: scale3d(1, 1, 1);
}
20% {
-webkit-transform: scale3d(1, 1.6, 1);
transform: scale3d(1, 1.6, 1);
}
50% {
-webkit-transform: scale3d(1, 0.005, 1);
transform: scale3d(1, 0.005, 1);
}
100% {
-webkit-transform: scale3d(0, 0, 1);
transform: scale3d(0, 0, 1);
}
}
@keyframes
shutdown { 0% {
-webkit-transform: scale3d(1, 1, 1);
transform: scale3d(1, 1, 1);
}
20% {
-webkit-transform: scale3d(1, 1.6, 1);
transform: scale3d(1, 1.6, 1);
}
50% {
-webkit-transform: scale3d(1, 0.005, 1);
transform: scale3d(1, 0.005, 1);
}
100% {
-webkit-transform: scale3d(0, 0, 1);
transform: scale3d(0, 0, 1);
}
}
@-webkit-keyframes
shutdown-opa { 0% {
opacity: 0;
}
50% {
opacity: 1;
}
100% {
opacity: 1;
}
}
@keyframes
shutdown-opa { 0% {
opacity: 0;
}
50% {
opacity: 1;
}
100% {
opacity: 1;
}
}
5. Include the latest version of jQuery library at the bottom of the web page.
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
6. The Javascript to enable the TV shutdown effect when you click the toggle link.
var $tv = $('.tv')
,$screen = $('.screen-content')
,$btn = $('.js-shtd-btn')
,videoHtml = '<iframe src="//player.vimeo.com/video/25323516?title=0&byline=0&portrait=0&autoplay=1" width="590" height="330" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>';
$btn.on('click', function(){
if ($tv.hasClass('_off')) {
$tv.removeClass('_off');
$screen.html(videoHtml)
} else {
$tv.addClass('_off');
$screen.empty();
}
})
This awesome jQuery plugin is developed by edbond88. For more Advanced Usages, please check the demo page or visit the official website.











