metro4
Version:
The front-end framework for Build responsive, mobile-first projects on the web with the first front-end component library in Metro Style
174 lines (173 loc) • 3.54 kB
CSS
.desktop {
display: flex;
flex-direction: column;
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
.window-area,
.task-bar {
position: relative;
display: block;
}
.window-area {
height: 100%;
position: relative;
}
.task-bar {
display: flex;
flex-flow: row nowrap;
height: 42px;
background-color: #053046;
}
.task-bar .task-bar-section {
height: 100%;
width: auto;
display: flex;
flex-flow: row nowrap;
}
.task-bar .task-bar-item {
position: relative;
display: block;
width: 48px;
height: 40px;
margin: 0;
padding: 0;
background-color: transparent;
border: none;
cursor: default;
color: #ffffff;
vertical-align: middle;
text-align: center;
min-width: 0;
outline: none;
}
.task-bar .task-bar-item * {
display: block;
margin: 8px 12px;
height: 24px;
width: 24px;
font-size: 18px;
line-height: 24px;
vertical-align: middle;
}
.task-bar .task-bar-item:hover {
background-color: rgba(255, 255, 255, 0.1);
}
.task-bar .task-bar-item.active {
background-color: rgba(255, 255, 255, 0.3);
}
.task-bar .task-bar-item.started::after {
display: block;
content: "";
position: absolute;
bottom: 0;
left: 5px;
right: 5px;
height: 3px;
background-color: #5ebdec;
transition: all 0.3s ease;
}
.task-bar .task-bar-item.started:hover::after {
left: 1px;
right: 1px;
transition: all 0.3s ease;
}
.task-bar .task-bar-item:active,
.task-bar .task-bar-item.focus,
.task-bar .task-bar-item:focus {
box-shadow: none ;
}
.task-bar.icons-small {
height: 30px;
padding: 0;
}
.task-bar.icons-small .task-bar-item {
width: 16px;
height: 16px;
margin: 0 8px;
}
.task-bar a.task-bar-item {
color: #ffffff;
}
.task-bar a.task-bar-item:hover {
color: #ffffff;
}
.start-menu {
padding: 1px;
border-top: 1px rgba(255, 255, 204, 0.1) solid;
border-right: 1px rgba(255, 255, 204, 0.1) solid;
top: auto;
bottom: 100%;
background-color: #004d6f;
color: #ffffff;
display: none;
position: absolute;
float: left;
width: auto;
margin: 0;
list-style: none inside none;
z-index: 1000;
box-shadow: 2px -2px 5px 0px rgba(0, 0, 0, 0.75);
}
.start-menu-inner {
display: flex;
flex-flow: row nowrap;
}
.start-menu .sys-buttons {
width: 48px;
display: flex;
flex-flow: column nowrap;
justify-content: flex-end;
}
.start-menu .explorer {
width: 220px;
}
.ani-swoopInTop {
animation-name: swoopInTop;
animation-duration: 0.5s;
}
.ani-swoopOutTop {
animation-name: swoopOutTop;
animation-duration: 0.5s;
}
@keyframes swoopInTop {
0% {
opacity: 0;
animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
transform: scaleY(1.5) translate3d(0, -400px, 0);
}
40% {
opacity: 1;
animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
transform: scaleY(1.2) translate3d(0, 0, 0);
}
65% {
transform: scaleY(1) translate3d(0, 20px, 0);
}
100% {
animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
transform: scaleY(1) translate3d(0, 0, 0);
}
}
@keyframes swoopOutTop {
0% {
animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
transform: scaleY(1) translate3d(0, 0, 0);
}
40% {
opacity: 1;
transform: scaleY(1) translate3d(0, 20px, 0);
}
60% {
animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
transform: scaleY(1.2) translate3d(0, 0, 0);
}
100% {
opacity: 0;
animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
transform: scaleY(1.5) translate3d(0, -400px, 0);
}
}