This repository has been archived on 2023-05-26. You can view files and clone it, but cannot push or open issues or pull requests.
web/bibli/nyan.css

577 lines
19 KiB
CSS

#nc {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
overflow: hidden;
}
#nc {
font: 13px/1.4 Helvetica, arial, freesans, clean, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol";
}
/* nyan cat! */
#nyan-cat {
position: absolute;
width: 194px;
height: 122px;
top: 50%;
left: 50%;
margin-top: -60px;
margin-left: -97px;
z-index: 2;
}
#nyan-cat.frame1,
#nyan-cat.frame2 {
margin-top: -54px;
}
/* pop-tarts body */
#pop-tarts-body {
border: solid black;
border-width: 6px 0;
width: 97px;
height: 92px;
position: absolute;
left: 52px;
top: 0;
}
#pop-tarts-body:after {
content: '';
border: solid black;
border-width: 0 6px;
width: 109px;
height: 80px;
position: absolute;
top: 6px;
left: -12px;
}
#pop-tarts-body:before {
content: '';
position: absolute;
left: -6px;
top: 0;
width: 109px;
height: 92px;
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-color: #fc9;
background-size: 6px 6px;
background-position: 0 0, 103px 0, 0 86px, 103px 86px;
}
#pop-tarts-body-cream {
position: absolute;
width: 100%;
height: 80px;
top: 6px;
left: 0;
background: linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat, linear-gradient(#f39, #f39) no-repeat;
background-color: #f9f;
background-size: 6px 6px;
background-position: 12px 12px, 40px 6px, 58px 6px, 35px 29px, 80px 18px, 18px 40px, 40px 46px, 6px 52px, 29px 63px;
}
#pop-tarts-body-cream:before {
content: '';
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0;
background: linear-gradient(#fc9, #fc9) no-repeat, linear-gradient(#fc9, #fc9) no-repeat, linear-gradient(#fc9, #fc9) no-repeat, linear-gradient(#fc9, #fc9) no-repeat, linear-gradient(#fc9, #fc9) no-repeat, linear-gradient(#fc9, #fc9) no-repeat, linear-gradient(#fc9, #fc9) no-repeat, linear-gradient(#fc9, #fc9) no-repeat;
background-size: 12px 6px, 12px 6px, 12px 6px, 12px 6px, 6px 12px, 6px 12px, 6px 12px, 6px 12px;
background-position: 0 0, 85px 0, 0 74px, 85px 74px, 0 0, 91px 0, 0 68px, 91px 68px;
}
/* pseudo elems */
#head:before,
#head:after,
#tail:before,
#nyan-cat:before,
#paws:before,
#face:before {
content: '';
position: absolute;
}
.sparks-combo {
height: 300px;
width: 200%;
position: relative;
animation: woosh 700ms 0ms linear infinite both;
}
.spark {
z-index: 1;
position: absolute;
width: 100%;
height: 100%;
background-color: transparent;
background: linear-gradient(to right, white 0px, white 6px, transparent 6px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 6px, transparent 6px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 6px, transparent 6px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 6px, transparent 6px, transparent 400px) repeat-x;
}
.spark:before {
background: linear-gradient(to right, white 0px, white 5px, transparent 5px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 5px, transparent 5px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 5px, transparent 5px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 5px, transparent 5px, transparent 400px) repeat-x;
}
.spark:after {
background: linear-gradient(to right, white 0px, white 6px, transparent 6px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 6px, transparent 6px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 11px, transparent 11px, transparent 400px) repeat-x, linear-gradient(to right, white 0px, white 11px, transparent 11px, transparent 400px) repeat-x;
}
.spark:before,
.spark:after {
content: '';
position: absolute;
width: 100%;
height: 100%;
background-color: transparent;
}
.spark:nth-child(1) {
z-index: 3;
top: 0;
left: 20px;
animation: sparkly 700ms 0ms steps(1) infinite both;
}
.spark:nth-child(1):before {
animation: sparkly-before 700ms 0ms steps(1) infinite both;
}
.spark:nth-child(1):after {
animation: sparkly-after 700ms 0ms steps(1) infinite both;
}
.spark:nth-child(2) {
top: 40px;
left: 170px;
animation: sparkly 700ms 200ms steps(1) infinite both;
}
.spark:nth-child(2):before {
animation: sparkly-before 700ms 200ms steps(1) infinite both;
}
.spark:nth-child(2):after {
animation: sparkly-after 700ms 200ms steps(1) infinite both;
}
.spark:nth-child(3) {
top: 100px;
left: 320px;
animation: sparkly 700ms 400ms steps(1) infinite both;
}
.spark:nth-child(3):before {
animation: sparkly-before 700ms 400ms steps(1) infinite both;
}
.spark:nth-child(3):after {
animation: sparkly-after 700ms 400ms steps(1) infinite both;
}
.spark:nth-child(4) {
top: 150px;
left: 200px;
animation: sparkly 700ms 600ms steps(1) infinite both;
}
.spark:nth-child(4):before {
animation: sparkly-before 700ms 600ms steps(1) infinite both;
}
.spark:nth-child(4):after {
animation: sparkly-after 700ms 600ms steps(1) infinite both;
}
@keyframes woosh {
0% {
left: 0px;
}
100% {
left: -400px;
}
}
@keyframes sparkly {
0% {
background-size: 400px 6px, 0 0, 0 0, 0 0;
background-position: 17px 17px, 0 0, 0 0, 0 0;
}
16% {
background-size: 400px 6px, 400px 6px, 400px 6px, 400px 6px;
background-position: 17px 0, 34px 17px, 17px 34px, 0 17px;
}
33% {
background-size: 400px 6px, 400px 6px, 400px 6px, 400px 6px;
background-position: 17px 0, 34px 17px, 17px 34px, 0 17px;
}
50% {
background-size: 400px 6px, 0 0, 0 0, 0 0;
background-position: 17px 17px, 0 0, 0 0, 0 0;
}
66% {
background-size: 400px 11px, 400px 11px, 0 0, 0 0;
background-position: 17px 6px, 17px 23px, 0 0, 0 0;
}
83% {
background-size: 0 0, 0 0, 400px 5px, 400px 5px;
background-position: 0 0, 0 0, 11px 17px, 22px 17px;
}
100% {
background-size: 400px 6px, 0 0, 0 0, 0 0;
background-position: 17px 17px, 0 0, 0 0, 0 0;
}
}
@keyframes sparkly-before {
0% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
16% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
33% {
background-size: 400px 5px, 400px 5px, 400px 5px, 400px 5px;
background-position: 6px 6px, 29px 6px, 29px 29px, 6px 29px;
}
50% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
66% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
83% {
background-size: 0 0, 0 0, 400px 5px, 400px 5px;
background-position: 0 0, 0 0, 17px 12px, 17px 22px;
}
100% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
}
@keyframes sparkly-after {
0% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
16% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
33% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
50% {
background-size: 400px 11px, 400px 11px, 400px 6px, 400px 6px;
background-position: 17px 0, 17px 29px, 0 17px, 29px 17px;
}
66% {
background-size: 0 0, 0 0, 400px 6px, 400px 6px;
background-position: 0 0, 0 0, 6px 17px, 23px 17px;
}
83% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
100% {
background-size: 0 0, 0 0, 0 0, 0 0;
background-position: 0 0, 0 0, 0 0, 0 0;
}
}
.rainbow {
background: none;
height: 102px;
width: 50%;
position: absolute;
top: 50%;
right: 50%;
margin-right: 45px;
z-index: 2;
}
.hot:after,
.hot:before,
.cold:after,
.cold:before {
content: "";
position: absolute;
left: 0;
right: 0;
height: 50%;
}
.hot:after,
.hot:before {
top: 0;
}
.cold:after,
.cold:before {
bottom: 0;
}
#wave-a {
margin-top: -54px;
animation: wavy 700ms 0ms steps(2) infinite both;
}
#wave-b {
margin-top: -60px;
animation: wavy 700ms 350ms steps(2) infinite both;
}
/* red */
.hot {
background-image: linear-gradient(to right, #f00 49px, transparent 49px, transparent 92px);
}
/* orange */
.hot:after {
background-image: linear-gradient(to right, #f90 49px, transparent 49px, transparent 92px);
}
/* yellow */
.hot:before {
background-image: linear-gradient(to right, #ff0 49px, transparent 49px, transparent 92px);
}
/* green */
.cold:after {
background-image: linear-gradient(to right, #3f0 49px, transparent 49px, transparent 92px);
background-position: left top;
}
/* blue */
.cold:before {
background-image: linear-gradient(to right, #09f 49px, transparent 49px, transparent 92px);
}
/* purple */
.cold {
background-image: linear-gradient(to right, #63f 49px, transparent 49px, transparent 92px);
}
.rainbow,
.hot:after,
.hot:before,
.cold:after,
.cold:before {
background-size: 95px 17px;
background-repeat: repeat-x;
}
#wave-a.hot,
#wave-a.cold:after {
background-position: left top;
}
#wave-a.hot:after,
#wave-a.cold:before {
background-position: left center;
}
#wave-a.hot:before,
#wave-a.cold {
background-position: left bottom;
}
#wave-b.hot,
#wave-b.cold:after {
background-position: 46px top;
}
#wave-b.hot:after,
#wave-b.cold:before {
background-position: 46px center;
}
#wave-b.hot:before,
#wave-b.cold {
background-position: 46px bottom;
}
@keyframes wavy {
0% {
margin-top: -54px;
}
100% {
margin-top: -60px;
}
}
/* head */
#head {
width: 80px;
height: 30px;
border: solid black;
border-width: 0 6px;
background: #999;
position: absolute;
}
/* #head:before = left ear | #head:after = right ear */
#head:before,
#head:after {
width: 40px;
height: 30px;
top: -30px;
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 6px 24px, 12px 6px, 12px 6px, 6px 6px, 6px 6px, 12px 30px, 12px 12px, 12px 6px, 6px 6px;
background-position: 0 6px, 6px 0, 30px 18px, 18px 6px, 24px 12px, 6px 6px, 18px 18px, 30px 24px, 18px 12px;
}
#head:after {
right: 0;
transform: scaleX(-1);
-webkit-transform: scaleX(-1);
}
#face {
width: 80px;
height: 100%;
position: absolute;
top: 6px;
background: linear-gradient(white, white) no-repeat, linear-gradient(white, white) no-repeat, linear-gradient(#f99, #f99) no-repeat, linear-gradient(#f99, #f99) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 6px 6px, 6px 6px, 12px 12px, 12px 12px, 12px 12px, 12px 12px, 6px 6px, 6px 6px, 6px 6px, 6px 6px;
background-position: 17px 0, 56px 0, 5px 12px, 68px 12px, 17px 0, 56px 0, 42px 6px, 23px 18px, 40px 18px, 56px 18px;
}
/* #face:before = chin */
#face:before {
bottom: -12px;
width: 100%;
height: 18px;
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 6px 6px, 6px 6px, 6px 6px, 6px 6px, 56px 6px, 39px 6px, 68px 6px, 56px 6px;
background-position: 0 0, 6px 6px, 74px 0, 68px 6px, 12px 12px, 23px 0, 6px 0, 12px 6px;
}
/* FRAME 1 AND 5 */
.frame1 #head,
.frame5 #head {
bottom: 36px;
right: 0;
}
/* FRAMES 2 AND 3 AND 4 */
.frame2 #head,
.frame3 #head,
.frame4 #head {
bottom: 36px;
right: -6px;
}
/* FRAME 6 */
.frame6 #head {
bottom: 42px;
right: 0;
}
/* paws */
#paws {
width: 156px;
height: 30px;
position: absolute;
bottom: 0;
left: 24px;
}
/* FRAME 1 */
.frame1 #paws {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 18px 18px;
background-position: 4px 6px, 10px 0, 34px 0, 40px 6px, 94px 0px, 101px 6px, 125px 0px, 131px 6px;
}
.frame1 #paws:before {
width: 100%;
height: 100%;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 12px 12px, 12px 12px, 12px 12px, 12px 12px, 6px 6px;
background-position: 10px 6px, 40px 6px, 101px 6px, 131px 6px, 22px 6px;
}
/* FRAMES 2 AND 4 */
.frame2 #paws,
.frame4 #paws {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 18px 18px;
background-position: 10px 6px, 16px 0, 40px 0, 46px 6px, 95px 0, 101px 6px, 125px 0, 131px 6px;
}
.frame2 #paws:before,
.frame4 #paws:before {
width: 100%;
height: 100%;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 12px 12px;
background-position: 16px 6px, 46px 6px, 101px 6px, 131px 6px;
}
/* FRAME 3 */
.frame3 #paws {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 18px 18px;
background-position: 16px 6px, 22px 0px, 46px 0px, 52px 6px, 100px 0px, 106px 6px, 131px 0px, 137px 6px;
}
.frame3 #paws:before {
width: 100%;
height: 100%;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 12px 12px;
background-position: 22px 6px, 52px 6px, 106px 6px, 137px 6px;
}
/* FRAME 5 AND 6 */
.frame5 #paws,
.frame6 #paws {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 18px 18px;
background-position: 4px 6px, 10px 0, 34px 0, 40px 6px, 94px 0px, 101px 6px, 125px 0px, 131px 6px;
}
.frame5 #paws:before,
.frame6 #paws:before {
width: 100%;
height: 100%;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 12px 12px;
background-position: 10px 6px, 16px 0, 40px 6px, 101px 6px, 131px 6px;
}
/* FRAME 6 */
.frame6 #paws {
background-position: 4px 6px, 10px 0, 40px 0, 34px 6px, 101px 0px, 95px 6px, 125px 0px, 131px 6px;
}
/* tail */
#tail {
width: 40px;
height: 54px;
position: absolute;
left: 0;
top: 40px;
}
/* FRAME 1 */
.frame1 #tail {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 23px 18px;
background-position: 6px 0, 11px 6px, 17px 11px, 23px 17px, 34px 23px;
}
.frame1 #tail:before {
left: 11px;
top: 6px;
width: 29px;
height: 23px;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 11px 6px;
background-position: 0 0, 6px 6px, 12px 12px, 18px 18px, 24px 24px;
}
/* FRAMES 2 AND 6 */
.frame2 #tail,
.frame6 #tail {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 11px 23px, 11px 23px, 11px 23px, 6px 11px;
background-position: 12px 6px, 18px 12px, 29px 17px, 6px 12px;
}
.frame2 #tail:before,
.frame6 #tail:before {
width: 28px;
height: 23px;
left: 12px;
top: 12px;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 11px 6px;
background-position: 0 0, 0 5px, 6px 11px, 17px 11px, 17px 17px;
}
/* FRAME 3 */
.frame3 #tail {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 24px 12px, 24px 12px, 24px 12px, 6px 24px;
background-position: 16px 24px, 4px 30px, 10px 36px, 34px 18px;
}
.frame3 #tail:before {
width: 30px;
height: 12px;
top: 30px;
right: 0;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 24px 6px, 18px 6px;
background-position: 6px 0, 0 6px;
}
/* FRAME 4 */
.frame4 #tail {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 12px 24px, 12px 24px, 12px 24px, 6px 12px;
background-position: 28px 18px, 16px 24px, 10px 30px, 4px 36px;
}
.frame4 #tail:before {
width: 30px;
height: 24px;
top: 24px;
right: 0;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 12px 12px, 12px 12px, 12px 6px;
background-position: 18px 0, 0 12px, 6px 6px;
}
/* FRAME 5 */
.frame5 #tail {
background: linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat, linear-gradient(black, black) no-repeat;
background-size: 24px 18px, 24px 18px, 6px 12px, 6px 12px, 12px 6px;
background-position: 6px 6px, 12px 12px, 0 12px, 36px 12px, 28px 30px;
}
.frame5 #tail:before {
width: 34px;
height: 18px;
top: 12px;
right: 0;
background: linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat, linear-gradient(#999, #999) no-repeat;
background-size: 18px 6px, 22px 6px, 6px 6px;
background-position: 0 0, 6px 6px, 28px 12px;
}