vue-lite-youtube-embed
Version:
A private by default, faster and cleaner YouTube embed component for Vue applications.
65 lines • 2.03 kB
CSS
/* src/style.css */
.yt-lite {
background-color: #000;
position: relative;
display: block;
contain: content;
background-position: 50%;
background-size: cover;
cursor: pointer;
}
.yt-lite:before {
box-sizing: content-box;
content: "";
display: block;
position: absolute;
top: 0;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAADGCAYAAAAT+OqFAAAAdklEQVQoz42QQQ7AIAgEF/T/D+kbq/RWAlnQyyazA4aoAB4FsBSA/bFjuF1EOL7VbrIrBuusmrt4ZZORfb6ehbWdnRHEIiITaEUKa5EJqUakRSaEYBJSCY2dEstQY7AuxahwXFrvZmWl2rh4JZ07z9dLtesfNj5q0FU3A5ObbwAAAABJRU5ErkJggg==);
background-position: top;
background-repeat: repeat-x;
height: 60px;
padding-bottom: 50px;
width: 100%;
transition: all 0.2s cubic-bezier(0, 0, 0.2, 1);
}
.yt-lite:after {
content: "";
display: block;
padding-bottom: var(--aspect-ratio);
}
.yt-lite > iframe {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
}
.yt-lite > .lty-playbtn {
display: block;
width: 68px;
height: 48px;
position: absolute;
cursor: pointer;
transform: translate3d(-50%, -50%, 0);
top: 50%;
left: 50%;
z-index: 1;
background-color: transparent;
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 68 48"><path d="M66.52 7.74c-.78-2.93-2.49-5.41-5.42-6.19C55.79.13 34 0 34 0S12.21.13 6.9 1.55c-2.93.78-4.63 3.26-5.42 6.19C.06 13.05 0 24 0 24s.06 10.95 1.48 16.26c.78 2.93 2.49 5.41 5.42 6.19C12.21 47.87 34 48 34 48s21.79-.13 27.1-1.55c2.93-.78 4.64-3.26 5.42-6.19C67.94 34.95 68 24 68 24s-.06-10.95-1.48-16.26z" fill="red"/><path d="M45 24 27 14v20" fill="white"/></svg>');
filter: grayscale(100%);
transition: filter 0.2s cubic-bezier(0, 0, 0.2, 1);
border: none;
}
.yt-lite:hover > .lty-playbtn,
.yt-lite:focus-within > .lty-playbtn {
filter: none;
}
.yt-lite.lyt-activated {
cursor: unset;
}
.yt-lite.lyt-activated:before,
.yt-lite.lyt-activated > .lty-playbtn {
opacity: 0;
pointer-events: none;
}
/*# sourceMappingURL=index.css.map */