shiro
Version:
Online quiz game engine, inspired by russian tv show 'What? Where? When?' (Million Dollar Mind Game).
525 lines (487 loc) • 9.09 kB
CSS
/* gameplay panel */
.gameplay
{
position: fixed;
display: block;
top: 2%;
left: 2%;
right: 22%;
width: auto;
height: 40px;
text-align: center;
z-index: 2;
}
.gameplay_question
{
position: relative;
display: inline-block;
width: 24px;
height: 24px;
margin: 8px 0px 0px 30px;
line-height: 21px;
font-size: 14px;
color: #999999;
border: 2px solid #dddddd;
border-radius: 24px;
background-color: #ffffff;
text-align: center;
}
.gameplay_question:first-child
{
margin-left: 0px;
}
.gameplay_question.gameplay_question_played
{
color: #ffffff;
border-color: #999999;
background-color: #999999;
}
.gameplay_question.gameplay_question_playing
{
color: #fe6c1d;
border-color: #fe6c1d;
background-color: #ffffff;
box-shadow: 0px 0px 8px #fe6c1d;
z-index: 1;
}
.gameplay_question:after
{
content: "";
position: absolute;
display: block;
top: 9px;
left: 22px;
width: 30px;
height: 0px;
border-top: 2px solid #dddddd;
}
.gameplay_question:last-child:after
{
content: none;
}
.gameplay_question.gameplay_question_played:after
{
border-color: #999999;
}
/* animation */
.gameplay_question.gameplay_question_playing
{
-moz-animation-duration: 0.5s;
-moz-animation-name: gameplay_question_playing;
-moz-animation-iteration-count: infinite;
-moz-animation-direction: alternate;
-webkit-animation-duration: 0.5s;
-webkit-animation-name: gameplay_question_playing;
-webkit-animation-iteration-count: infinite;
-webkit-animation-direction: alternate;
animation-duration: 0.5s;
animation-name: gameplay_question_playing;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@-moz-keyframes gameplay_question_playing
{
from
{
opacity: 0.5;
box-shadow: 0px 0px 8px #fe6c1d;
}
to
{
opacity: 1;
box-shadow: 0px 0px 16px #fe6c1d;
}
}
@-webkit-keyframes gameplay_question_playing
{
from
{
opacity: 0.5;
box-shadow: 0px 0px 8px #fe6c1d;
}
to
{
opacity: 1;
box-shadow: 0px 0px 16px #fe6c1d;
}
}
@keyframes gameplay_question_playing
{
from
{
opacity: 0.5;
box-shadow: 0px 0px 8px #fe6c1d;
}
to
{
opacity: 1;
box-shadow: 0px 0px 16px #fe6c1d;
}
}
/* timer panel */
.timer
{
position: fixed;
display: block;
top: 2%;
left: 2%;
right: 22%;
width: auto;
height: 40px;
padding-top: 5px;
text-align: center;
}
.timer_tick
{
display: inline-block;
height: 30px;
border: 1px solid #fe6c1d;
}
.timer_tick:first-child
{
margin-left: 0px;
border-radius: 4px 0px 0px 4px;
}
.timer_tick:last-child
{
border-radius: 0px 4px 4px 0px;
}
.timer_tick_passed
{
background-color: #fe6c1d;
}
/* animation */
.timer.timer_running_out
{
-moz-animation-duration: 0.5s;
-moz-animation-name: timer_running_out;
-moz-animation-iteration-count: infinite;
-moz-animation-direction: alternate;
-webkit-animation-duration: 0.5s;
-webkit-animation-name: timer_running_out;
-webkit-animation-iteration-count: infinite;
-webkit-animation-direction: alternate;
animation-duration: 0.5s;
animation-name: timer_running_out;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@-moz-keyframes timer_running_out
{
0%
{
opacity: 1;
}
20%
{
opacity: 1;
}
100%
{
opacity: 0;
}
}
@-webkit-keyframes timer_running_out
{
0%
{
opacity: 1;
}
20%
{
opacity: 1;
}
100%
{
opacity: 0;
}
}
@keyframes timer_running_out
{
0%
{
opacity: 1;
}
20%
{
opacity: 1;
}
100%
{
opacity: 0;
}
}
/* scoreboard */
.scoreboard_team
{
position: relative;
display: inline-block;
margin: 10px 15px;
opacity: 0.5;
}
.scoreboard_team.scoreboard_team_online
{
opacity: 1;
}
.scoreboard_team_name,
.scoreboard_team_points
{
display: block;
min-width: 160px;
line-height: 34px;
font-size: 20px;
}
.scoreboard_team_name
{
border-bottom: 1px solid #cccccc;
}
.scoreboard_team_fracs
{
position: absolute;
display: inline-block;
margin-top: 2px;
font-size: 14px;
color: #999999;
}
/* shared question & scoreboard panels */
.scoreboard,
.question
{
position: fixed;
display: block;
top: calc(4% + 40px);
left: 2%;
right: 22%;
bottom: 22%;
width: auto;
height: auto;
padding: 5%;
text-align: center;
background-color: #ffffff;
}
.scoreboard:before,
.question:before
{
content: "";
display: inline-block;
width: 0px;
height: 100%;
vertical-align: middle;
}
.scoreboard_teams,
.question_text
{
display: inline-block;
width: auto;
height: auto;
vertical-align: middle;
}
/* question panel */
.question_text
{
font-size: 18px;
color: #000000;
white-space: pre-line;
pointer-events: none;
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* hide text */
.question:after
{
content: "";
position: absolute;
display: block;
top: 0px;
right: 0px;
bottom: 0px;
left: 0px;
width: auto;
height: auto;
}
.question_text::selection
{
background-color: transparent;
}
/* shared question and answers */
/* label */
.question_text:before,
.answer_text:before
{
content: "question";
position: absolute;
display: block;
top: 10px;
left: 10px;
font-family: "Ubuntu", sans-serif;
font-size: 36px;
color: #cccccc;
opacity: 0.5;
}
.answer_text:before
{
content: "answer";
}
/* answer section */
.answer
{
position: fixed;
display: block;
left: 2%;
right: 22%;
bottom: 2%;
width: auto;
height: 20%;
background-color: #ffffff;
background-image: -webkit-linear-gradient(left, rgba(204,204,204, 0), rgba(204, 204, 204, 0) 1.4%, rgba(204, 204, 204, 0.1) 2%, rgba(204, 204, 204, 1) 3.6%, rgba(204, 204, 204, 1) 96.4%, rgba(204, 204, 204, 0.1) 98%, rgba(204, 204, 204, 0) 98.6%, rgba(204,204,204, 0) 100%);
background-image: -moz-linear-gradient(left, rgba(204,204,204, 0), rgba(204, 204, 204, 0) 1.4%, rgba(204, 204, 204, 0.1) 2%, rgba(204, 204, 204, 1) 3.6%, rgba(204, 204, 204, 1) 96.4%, rgba(204, 204, 204, 0.1) 98%, rgba(204, 204, 204, 0) 98.6%, rgba(204,204,204, 0) 100%);
background-image: linear-gradient(left, rgba(204,204,204, 0), rgba(204, 204, 204, 0) 1.4%, rgba(204, 204, 204, 0.1) 2%, rgba(204, 204, 204, 1) 3.6%, rgba(204, 204, 204, 1) 96.4%, rgba(204, 204, 204, 0.1) 98%, rgba(204, 204, 204, 0) 98.6%, rgba(204,204,204, 0) 100%);
background-position: 0px 0px;
background-size: 100% 1px;
text-align: center;
}
.answer:before
{
content: "";
display: inline-block;
width: 0px;
height: 100%;
vertical-align: middle;
}
.answer_text
{
display: inline-block;
width: 90%;
height: auto;
vertical-align: middle;
white-space: pre-line;
pointer-events: none;
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
}
/* hide text */
.answer:after
{
content: "";
position: absolute;
display: block;
top: 0px;
right: 0px;
bottom: 0px;
left: 0px;
width: auto;
height: auto;
}
.answer_text::selection
{
background-color: transparent;
}
/* chart */
.answer_teams_chart
{
position: relative;
display: inline-block;
width: 90%;
height: 80%;
margin-top: 2%;
text-align: center;
vertical-align: middle;
white-space: nowrap;
pointer-events: none;
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
}
.answer_teams_chart:before,
.answer_teams_chart:after
{
content: "";
position: absolute;
display: block;
top: 0px;
right: 0px;
left: 0px;
width: auto;
height: 50%;
border: 1px dotted #999999;
border-width: 1px 0px;
z-index: -1;
}
.answer_teams_chart:after
{
top: 25%;
border-color: #dddddd;
}
.answer_teams_chart_axis_y
{
position: absolute;
display: block;
top: 0px;
bottom: 0px;
left: -5px;
width: 5px;
height: auto;
border-right: 1px solid #999999;
}
.answer_teams_chart_axis_y>i
{
display: block;
width: 5px;
height: 25%;
padding-right: 5px;
line-height: 0px;
font-size: 10px;
font-family: "Ubuntu", sans-serif;
color: #999999;
border-top: 1px solid #999999;
text-indent: -25px;
text-align: right;
}
.answer_teams_chart_team
{
position: relative;
display: inline-block;
height: 100%;
border-bottom: 1px solid #999999;
}
.answer_teams_chart_team_name
{
position: absolute;
display: block;
right: 0px;
bottom: 0px;
left: 0px;
width: auto;
height: 5px;
line-height: 28px;
font-size: 9px;
font-family: "Ubuntu", sans-serif;
color: #999999;
border-right: 1px solid #999999;
text-align: center;
}
.answer_teams_chart_team_bar
{
position: absolute;
display: block;
right: 15%;
bottom: 0px;
left: 15%;
width: auto;
background-color: #cccccc;
border-radius: 4px 4px 0px 0px;
opacity: 0.8;
}
.answer_teams_chart_team_correct .answer_teams_chart_team_bar
{
background-color: #33dd33;
}
.answer_teams_chart_team_wrong .answer_teams_chart_team_bar
{
background-color: #dd3333;
}