|
11 | 11 | {% endcomment %} |
12 | 12 | .timeslot-edit { overflow: auto; height: max(30rem, calc(100vh - 25rem));} |
13 | 13 | .tstable { width: 100%; border-collapse: separate; } {# "separate" to ensure sticky cells keep their borders #} |
14 | | -.tstable thead { position: sticky; top: 0; z-index: 3; background-color: white;} |
15 | | -.tstable th:first-child, .tstable td:first-child { |
16 | | - background-color: white; {# needs to match the lighter of the striped-table colors! #} |
17 | | -position: sticky; |
18 | | -left: 0; |
19 | | - z-index: 2; {# render above other cells / borders but below thead (z-index 3, above) #} |
20 | | -} |
21 | | -.tstable tbody > tr:nth-of-type(odd) > th:first-child { |
22 | | - background-color: rgb(249, 249, 249); {# needs to match the darker of the striped-table colors! #} |
23 | | -} |
24 | | -.tstable th { white-space: nowrap;} |
25 | | -.tstable td { white-space: nowrap;} |
26 | | -.capacity { font-size:80%; font-weight: normal;} |
27 | | -a.new-timeslot-link { color: lightgray; font-size: large;} |
| 14 | + .tstable tr th:first-child { min-width: 25rem; max-width: 25rem; overflow: hidden; } |
| 15 | + .tstable thead { position: sticky; top: 0; z-index: 3; background-color: white;} |
| 16 | + .tstable thead th span.day { position: sticky; left: 25.5rem; } |
| 17 | + .tstable th:first-child, .tstable td:first-child { |
| 18 | + background-color: white; {# needs to match the lighter of the striped-table colors! #} |
| 19 | + position: sticky; |
| 20 | + left: 0; |
| 21 | + z-index: 2; {# render above other cells / borders but below thead (z-index 3, above) #} |
| 22 | + } |
| 23 | + .tstable tbody > tr:nth-of-type(odd) > th:first-child { |
| 24 | + background-color: rgb(249, 249, 249); {# needs to match the darker of the striped-table colors! #} |
| 25 | + } |
| 26 | + .tstable th { white-space: nowrap;} |
| 27 | + .tstable td { white-space: nowrap;} |
| 28 | + .capacity { font-size:80%; font-weight: normal;} |
| 29 | + a.new-timeslot-link { color: lightgray; font-size: large;} |
28 | 30 | {% endblock %} |
29 | 31 | {% block content %} |
30 | 32 | {% origin %} |
|
84 | 86 | <th scope="col"></th> |
85 | 87 | {% for day in time_slices %} |
86 | 88 | <th scope="col" class="day-label" colspan="{{ date_slices|colWidth:day }}"> |
87 | | - {{ day|date:'D' }} ({{ day }}) |
88 | | - <i class="bi bi-trash delete-button" |
89 | | - title="Delete all on this day" |
90 | | - data-delete-scope="day" |
91 | | - data-date-id="{{ day.isoformat }}"> |
92 | | - </i> |
| 89 | + <span class="day"> |
| 90 | + {{ day|date:'D' }} ({{ day }}) |
| 91 | + <i class="bi bi-trash delete-button" |
| 92 | + title="Delete all on this day" |
| 93 | + data-delete-scope="day" |
| 94 | + data-date-id="{{ day.isoformat }}"> |
| 95 | + </i> |
| 96 | + </span> |
93 | 97 | </th> |
94 | 98 | {% endfor %} |
95 | 99 | {% endif %} |
|
0 commit comments