finished styling of tracks table
This commit is contained in:
301
public/css/modules/globals/globals.css
Normal file
301
public/css/modules/globals/globals.css
Normal file
@@ -0,0 +1,301 @@
|
||||
#loading_overlay {
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
flex-direction: column;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
background: rgba(0, 0, 0, 0.5);
|
||||
display: none;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
#loading_overlay.active {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
#loading_text {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
#main_content {
|
||||
margin-left: 48px;
|
||||
width: calc(100% - 48px);
|
||||
height: 100%;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
img.rounded {
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
img.circle {
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.coverart {
|
||||
background-color: var(--secondary-background);
|
||||
}
|
||||
|
||||
.cover_container {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.cover_container .coverart {
|
||||
opacity: 1;
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
transition: 0.5s ease;
|
||||
backface-visibility: hidden;
|
||||
}
|
||||
|
||||
.cover_container .download_overlay {
|
||||
transition: 0.5s ease;
|
||||
opacity: 0;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
-ms-transform: translate(-50%, -50%);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.cover_container .download_overlay i {
|
||||
background-color: #000000;
|
||||
color: white;
|
||||
border-radius: 50%;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.cover_container:hover .coverart {
|
||||
opacity: 0.75;
|
||||
}
|
||||
|
||||
.cover_container:hover .download_overlay {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
i.disabled {
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
i.explicit_icon {
|
||||
color: #ff3b30;
|
||||
margin-right: var(--explicit-separator);
|
||||
}
|
||||
|
||||
span.tag {
|
||||
background-color: var(--tag-background);
|
||||
border-radius: 2px;
|
||||
color: var(--tag-text);
|
||||
display: inline-block;
|
||||
font-size: 10px;
|
||||
padding: 3px 6px;
|
||||
}
|
||||
|
||||
p {
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: dodgerblue;
|
||||
}
|
||||
|
||||
.clickable {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.toastify {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
box-shadow: 0 3px 6px -1px rgba(0, 0, 0, 0.12), 0 10px 36px -4px rgba(0, 0, 0, 0.3);
|
||||
background: var(--toast-background);
|
||||
color: var(--toast-text);
|
||||
}
|
||||
|
||||
.inline-flex {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.inline-flex .right {
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
button {
|
||||
font-family: inherit;
|
||||
font-weight: 600;
|
||||
font-size: 14px;
|
||||
padding: 0px 8px;
|
||||
margin-right: 8px;
|
||||
height: 36px;
|
||||
background-color: var(--accent-color);
|
||||
border: 0px solid black;
|
||||
border-radius: 4px;
|
||||
min-width: 64px;
|
||||
text-transform: uppercase;
|
||||
color: var(--accent-text);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
button[disabled] {
|
||||
background-color: var(--secondary-background);
|
||||
color: var(--main-text);
|
||||
opacity: 0.75;
|
||||
}
|
||||
|
||||
button.selective {
|
||||
background-color: var(--main-background);
|
||||
color: var(--main-text);
|
||||
}
|
||||
|
||||
button.selective.active {
|
||||
background-color: var(--accent-color);
|
||||
color: var(--accent-text);
|
||||
}
|
||||
|
||||
button.with_icon {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
button.with_icon i {
|
||||
margin-left: 8px;
|
||||
}
|
||||
|
||||
input[type='text'],
|
||||
input[type='password'],
|
||||
input[type='number'] {
|
||||
width: calc(100% - 16px);
|
||||
border: 0px solid black;
|
||||
line-height: 36px;
|
||||
padding: 0px 8px;
|
||||
border-radius: 4px;
|
||||
background-color: var(--secondary-background);
|
||||
color: var(--primary-text);
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
select {
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
width: 100%;
|
||||
border: 0px solid black;
|
||||
line-height: 36px;
|
||||
padding: 0px 40px 0px 8px;
|
||||
border-radius: 4px;
|
||||
background-color: var(--secondary-background);
|
||||
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 0 24 24' width='24'%3E%3Cpath style='fill%3A%23000000%3Bfill-opacity%3A0.25' d='M7 10l5 5 5-5z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");
|
||||
background-repeat: no-repeat;
|
||||
background-size: 24px;
|
||||
background-position: calc(100% - 8px) center;
|
||||
background-clip: border-box;
|
||||
color: var(--primary-text);
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
input[type='checkbox'] {
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
background-color: none;
|
||||
border: 2px solid gray;
|
||||
opacity: 0.5;
|
||||
border-radius: 2px;
|
||||
padding: 7px;
|
||||
margin: 3px;
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
input[type='checkbox']:checked {
|
||||
opacity: 1;
|
||||
background-color: var(--accent-color);
|
||||
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' height='18' viewBox='3 3 18 18' width='18'%3E%3Cpath fill='%23ffffff' d='M 10,17 5,12 6.41,10.59 10,14.17 17.59,6.58 19,8 Z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E");
|
||||
background-position: center center;
|
||||
border: 0px solid var(--accent-color);
|
||||
border-radius: 2px;
|
||||
padding: 9px;
|
||||
margin: 3px;
|
||||
color: var(--accent-text);
|
||||
}
|
||||
|
||||
.right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.fixed_footer footer {
|
||||
position: sticky;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-direction: row;
|
||||
justify-content: flex-end;
|
||||
background-color: var(--main-background);
|
||||
bottom: 0px;
|
||||
height: 64px;
|
||||
width: 100%;
|
||||
margin-top: 24px;
|
||||
}
|
||||
|
||||
.tab {
|
||||
margin: 16px 0px;
|
||||
}
|
||||
|
||||
th.sortable {
|
||||
-webkit-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
th.sort-asc:after {
|
||||
content: '\25b2';
|
||||
font-size: 0.7em;
|
||||
padding-left: 3px;
|
||||
line-height: 0.7em;
|
||||
}
|
||||
|
||||
th.sort-desc:after {
|
||||
content: '\25bc';
|
||||
font-size: 0.7em;
|
||||
padding-left: 3px;
|
||||
line-height: 0.7em;
|
||||
}
|
||||
|
||||
.fab {
|
||||
width: 56px;
|
||||
height: 56px;
|
||||
border-radius: 28px;
|
||||
display: inline-block;
|
||||
background-color: var(--accent-color);
|
||||
color: var(--accent-text);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.fab i {
|
||||
font-size: 24px;
|
||||
padding: 16px;
|
||||
}
|
||||
|
||||
.with_checkbox {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.with_checkbox [type='checkbox'] {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.with_checkbox .checkbox_text {
|
||||
margin-left: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.with_checkbox .checkbox_text::selection {
|
||||
background: none;
|
||||
}
|
||||
|
||||
.hide {
|
||||
display: none !important;
|
||||
}
|
||||
164
public/css/modules/globals/tables.css
Normal file
164
public/css/modules/globals/tables.css
Normal file
@@ -0,0 +1,164 @@
|
||||
.table {
|
||||
width: 100%;
|
||||
-webkit-border-horizontal-spacing: 0px;
|
||||
-webkit-border-vertical-spacing: 0px;
|
||||
}
|
||||
|
||||
.table td,
|
||||
.table th {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.table tr {
|
||||
background: var(--table-bg);
|
||||
transition: background-color 175ms ease-in-out;
|
||||
}
|
||||
|
||||
.table tr:not(:last-child) {
|
||||
border-bottom: 1px solid var(--table-highlight);
|
||||
}
|
||||
|
||||
.table tbody tr:hover {
|
||||
background: var(--table-highlight);
|
||||
}
|
||||
|
||||
.table .table__cover {
|
||||
box-sizing: content-box;
|
||||
width: 32px;
|
||||
}
|
||||
|
||||
.table .table__cover.table__cover--big {
|
||||
width: 48px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* === Tracks Table === */
|
||||
.table--tracks {
|
||||
border-collapse: collapse;
|
||||
|
||||
--radius: 3px;
|
||||
--vertical-separator: 7px;
|
||||
}
|
||||
|
||||
.table--tracks thead {
|
||||
position: sticky;
|
||||
border-bottom: 2px solid var(--table-highlight);
|
||||
}
|
||||
|
||||
.table--tracks td {
|
||||
height: 35px;
|
||||
}
|
||||
|
||||
.table--tracks th {
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.table--tracks .table__col.table__col--centered {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.table--tracks td.breakline {
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.table--tracks tr:first-child td:first-child {
|
||||
border-top-left-radius: var(--radius);
|
||||
}
|
||||
|
||||
.table--tracks tr:first-child td:last-child {
|
||||
border-top-right-radius: var(--radius);
|
||||
}
|
||||
|
||||
.table--tracks tr:last-child td:first-child {
|
||||
border-bottom-left-radius: var(--radius);
|
||||
}
|
||||
|
||||
.table--tracks tr:last-child td:last-child {
|
||||
border-bottom-right-radius: var(--radius);
|
||||
}
|
||||
|
||||
.table--tracks td:first-child {
|
||||
padding: var(--vertical-separator) 10px var(--vertical-separator) 20px;
|
||||
}
|
||||
|
||||
.table--tracks td:nth-child(2) {
|
||||
width: 50%;
|
||||
padding: var(--vertical-separator) 10px;
|
||||
}
|
||||
|
||||
.table--tracks td:nth-child(3) {
|
||||
width: 16.8%;
|
||||
padding: var(--vertical-separator) 10px;
|
||||
}
|
||||
|
||||
.table--tracks td:nth-child(4) {
|
||||
width: 16.8%;
|
||||
padding: var(--vertical-separator) 10px;
|
||||
}
|
||||
|
||||
.table--tracks td:nth-child(5) {
|
||||
width: 6%;
|
||||
padding: var(--vertical-separator) 10px;
|
||||
}
|
||||
|
||||
.table--tracks td:last-child {
|
||||
padding: var(--vertical-separator) 20px var(--vertical-separator) 10px;
|
||||
}
|
||||
|
||||
.table--tracks .table__download {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.table--tracks .table__download i.material-icons {
|
||||
transition: color 175ms ease-in-out;
|
||||
}
|
||||
|
||||
.table--tracks .table__download:hover i.material-icons {
|
||||
color: var(--table-bg);
|
||||
}
|
||||
|
||||
/* === Tracks Table End === */
|
||||
|
||||
.table td img {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.tracklist_table td {
|
||||
height: 50px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.tracklist_table .explicit_icon {
|
||||
vertical-align: middle;
|
||||
margin-right: var(--explicit-separator);
|
||||
}
|
||||
|
||||
.tracklist_table .track_position_head,
|
||||
.tracklist_table .track_position {
|
||||
width: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.explicit_tracklist {
|
||||
margin-left: var(--explicit-separator);
|
||||
}
|
||||
|
||||
.track_checkbox {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.track_row > td > img {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
|
||||
.track_row > td > a > img {
|
||||
width: 56px;
|
||||
height: 56px;
|
||||
}
|
||||
|
||||
.top-tracks-position {
|
||||
padding: 12px;
|
||||
text-align: center;
|
||||
cursor: default;
|
||||
}
|
||||
Reference in New Issue
Block a user