Downloads Bar
by Cătălin Dogaru
HTML
<div class="downloads-bar">
<div class="downloads-row">
<div class="downloads-col-files">
<ul class="downloads-list">
<li>
<button type="button" class="downloads-btn">
<!-- <span class="download-icon download-icon-progress"></span> -->
<span class="download-file">Sample-text-file-10kb.txt</span>
</button>
</li>
<li>
<button type="button" class="downloads-btn">
<!-- <span class="download-icon download-icon-completed"></span> -->
<span class="download-file">Sample-text-file-20kb.txt</span>
</button>
</li>
<li>
<button type="button" class="downloads-btn">
<!-- <span class="download-icon download-icon-failed"></span> -->
<span class="download-file">Sample-text-file-50kb.txt</span>
</button>
</li>
</ul>
</div>
<div class="downloads-col-actions">
<ul class="downloads-list">
<li><button type="button" class="downloads-btn">Show All</button></li>
<li><button type="button" class="downloads-btn downloads-btn-transparent downlads-btn-close">×</button></li>
</ul>
</div>
</div>
</div>
CSS
.downloads-bar {
background-color: #eee;
border-top: 1px solid #bbb;
bottom: 0;
left: 0;
position: absolute;
right: 0;
}
.downloads-row {
display: flex;
}
.downloads-col-files {
flex: 1 0;
overflow: hidden;
padding: 6px 0 6px 8px;
position: relative;
white-space: nowrap;
}
.downloads-col-files:after{
background-image: linear-gradient(-90deg, #eee 10%, transparent 100%);
bottom: 0;
content: '';
position: absolute;
right: 0;
top: 0;
width: 100px;
}
.downloads-col-actions {
flex: 0 0;
padding: 6px 12px 6px 8px;
}
.downloads-list {
list-style: none;
margin-bottom: 0;
margin-top: 0;
padding-left: 0;
white-space: nowrap;
}
.downloads-list > li {
display: inline-block;
}
.downloads-list > li + li {
margin-left: 3px;
}
.downloads-btn {
background-position: -1px -1px;
background-repeat: repeat-x;
background-size: 110% 110%;
border-radius: .25em;
border: 1px solid rgba(27, 31, 35, .2);
cursor: pointer;
display: inline-block;
font-size: 13px;
line-height: 20px;
padding: 6px 12px;
position: relative;
vertical-align: middle;
white-space: nowrap;
}
.downloads-btn:hover {
background-repeat: repeat-x;
text-decoration: none;
}
.downloads-btn:focus {
outline: 0;
}
.downloads-btn:disabled,
.downloads-btn.disabled {
background-position: 0 0;
cursor: default;
}
.downloads-btn:active,
.downloads-btn.active {
background-image: none;
}
.downloads-btn {
background-color: #eff3f6;
background-image: linear-gradient(-180deg, #fafbfc 0%, #eff3f6 90%);
color: #24292e;
}
.downloads-btn:hover,
.downloads-btn.hover {
background-color: #e6ebf1;
background-image: linear-gradient(-180deg, #f0f3f6 0%, #e6ebf1 90%);
background-position: -.5em;
border-color: rgba(27, 31, 35, .35);
}
.downloads-btn:focus,
.downloads-btn.focus {
box-shadow: 0 0 0 .2em rgba(3, 102, 214, .3);
}
.downloads-btn:active,
.downloads-btn.active {
background-color: #e9ecef;
background-image: none;
...