Я пытаюсь оформить календарь в CSS и хочу, чтобы одно событие постоянно охватывало дни, на которые запланировано событие, а не разбивалось по отдельности. Я свободно владею CSS, но я изо всех сил пытаюсь понять, как отредактировать это, чтобы, например, «Событие № 1» не имело разрывов между днями, а вместо этого представляло собой одну непрерывную черную линию до последнего дня. где он полный.
Это то, что я пытаюсь сделать.
Мой текущий код выглядит так, а это живая ссылка на сайт (это второй раздел сайта)
<table class = "spiffy calendar-table bigcal spiffy-weekly">
<tbody>
<tr class = "calendar-heading">
<td colspan = "7" class = "calendar-date-switcher">
<table class = "calendar-heading-tbl">
<tbody>
<tr>
<td class = "calendar-prev"><a rel = "nofollow" onclick = "sessionStorage.scrollTop = jQuery(window).scrollTop();" href = "/?preview_id=17&preview_nonce=f0919fcc84&_thumbnail_id=-1&preview=true&daynum=06&month=dec&yr=2020"><</a>
</td>
<td class = "calendar-month">December 2020</td>
<td class = "calendar-next"><a rel = "nofollow" onclick = "sessionStorage.scrollTop = jQuery(window).scrollTop();" href = "/?preview_id=17&preview_nonce=f0919fcc84&_thumbnail_id=-1&preview=true&daynum=14&month=dec&yr=2020">></a>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr class = "weekday-titles">
<td class = "normal-day-heading">Monday</td>
<td class = "normal-day-heading">Tuesday</td>
<td class = "normal-day-heading">Wednesday</td>
<td class = "normal-day-heading">Thursday</td>
<td class = "normal-day-heading">Friday</td>
<td class = "weekend-heading">Saturday</td>
<td class = "weekend-heading">Sunday</td>
</tr>
<tr>
<td class = "spiffy-day-07 no-events day-with-date"><span class = "day-number">07</span><span class = "event"></span>
</td>
<td class = "spiffy-day-08 no-events day-with-date"><span class = "day-number">08</span><span class = "event"></span>
</td>
<td class = "spiffy-day-09 day-with-date"><span class = "day-number">09</span><span class = "event"><span class = "calnk category_1 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#000000;"><span class = "calnk-box"><a href = "https://link.com" style = "color: #FFFFFF; background:#000000;" target = "_blank"><span class = "spiffy-title">Event #1</span>
</a><span class = "spiffy-popup" style = "color:#000000;"><a href = "https://link.com" target = "_blank"><span class = "event-title" style = "color:#000000;">Event #1</span><span class = "event-title-break"></span><span class = "ca-desc-p">Event description</span>
</a><span class = "ca-location-p">Event location</span>
</span>
</span>
</span>
</span>
</span>
</td>
<td class = "spiffy-day-10 day-with-date"><span class = "day-number">10</span><span class = "event"><span class = "calnk category_1 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#000000;"><span class = "calnk-box"><a href = "https://link.com" style = "color: #FFFFFF; background:#000000;" target = "_blank"><span class = "spiffy-title">Event #1</span>
</a><span class = "spiffy-popup" style = "color:#000000;"><a href = "https://link.com" target = "_blank"><span class = "event-title" style = "color:#000000;">Event #1</span><span class = "event-title-break"></span><span class = "ca-desc-p">Event description</span>
</a><span class = "ca-location-p">Event location</span>
</span>
</span>
</span>
</span>
<span class = "calnk category_2 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#6d6d6d;"><span class = "calnk-box"><span class = "spiffy-title">Tornament</span><span class = "spiffy-popup" style = "color:#6d6d6d;"><span class = "event-title" style = "color:#6d6d6d;">Tornament</span>
<span class = "event-title-break"></span><span class = "ca-desc-p">Tournament description</span>
<span class = "ca-location-p">Tournament description</span>
</span>
</span>
</span>
</span>
</span>
</td>
<td class = "spiffy-day-11 day-with-date"><span class = "day-number">11</span><span class = "event"><span class = "calnk category_1 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#000000;"><span class = "calnk-box"><a href = "https://link.com" style = "color: #FFFFFF; background:#000000;" target = "_blank"><span class = "spiffy-title">Event #1</span>
</a><span class = "spiffy-popup" style = "color:#000000;"><a href = "https://link.com" target = "_blank"><span class = "event-title" style = "color:#000000;">Event #1</span><span class = "event-title-break"></span><span class = "ca-desc-p">Event description</span>
</a><span class = "ca-location-p">Event location</span>
</span>
</span>
</span>
</span>
<span class = "calnk category_2 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#6d6d6d;"><span class = "calnk-box"><span class = "spiffy-title">Tornament</span><span class = "spiffy-popup" style = "color:#6d6d6d;"><span class = "event-title" style = "color:#6d6d6d;">Tornament</span>
<span class = "event-title-break"></span><span class = "ca-desc-p">Tournament description</span>
<span class = "ca-location-p">Tournament description</span>
</span>
</span>
</span>
</span>
</span>
</td>
<td class = "spiffy-day-12 weekend day-with-date"><span class = "day-number weekend">12</span><span class = "event"><span class = "calnk category_1 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#000000;"><span class = "calnk-box"><a href = "https://link.com" style = "color: #FFFFFF; background:#000000;" target = "_blank"><span class = "spiffy-title">Event #1</span>
</a><span class = "spiffy-popup" style = "color:#000000;"><a href = "https://link.com" target = "_blank"><span class = "event-title" style = "color:#000000;">Event #1</span><span class = "event-title-break"></span><span class = "ca-desc-p">Event description</span>
</a><span class = "ca-location-p">Event location</span>
</span>
</span>
</span>
</span>
<span class = "calnk category_2 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#6d6d6d;"><span class = "calnk-box"><span class = "spiffy-title">Tornament</span><span class = "spiffy-popup" style = "color:#6d6d6d;"><span class = "event-title" style = "color:#6d6d6d;">Tornament</span>
<span class = "event-title-break"></span><span class = "ca-desc-p">Tournament description</span>
<span class = "ca-location-p">Tournament description</span>
</span>
</span>
</span>
</span>
</span>
</td>
<td class = "spiffy-day-13 current-day weekend day-with-date"><span class = "day-number weekend">13</span><span class = "event"><span class = "calnk category_1 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#000000;"><span class = "calnk-box"><a href = "https://link.com" style = "color: #FFFFFF; background:#000000;" target = "_blank"><span class = "spiffy-title">Event #1</span>
</a><span class = "spiffy-popup" style = "color:#000000;"><a href = "https://link.com" target = "_blank"><span class = "event-title" style = "color:#000000;">Event #1</span><span class = "event-title-break"></span><span class = "ca-desc-p">Event description</span>
</a><span class = "ca-location-p">Event location</span>
</span>
</span>
</span>
</span>
<span class = "calnk category_2 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#6d6d6d;"><span class = "calnk-box"><span class = "spiffy-title">Tornament</span><span class = "spiffy-popup" style = "color:#6d6d6d;"><span class = "event-title" style = "color:#6d6d6d;">Tornament</span>
<span class = "event-title-break"></span><span class = "ca-desc-p">Tournament description</span>
<span class = "ca-location-p">Tournament description</span>
</span>
</span>
</span>
</span>
<span class = "calnk category_3 category-bg"><span onclick = "" class = "calnk-link" style = "color: #FFFFFF; background:#dd3333;"><span class = "calnk-box"><span class = "spiffy-title">Show #1</span><span class = "spiffy-popup" style = "color:#dd3333;"><span class = "event-title" style = "color:#dd3333;">Show #1</span>
<span class = "event-title-break"></span>
</span>
</span>
</span>
</span>
</span>
</td>
</tr>
</tbody>
</table>```
@sergeykuznetsov как ты это сделал!? да, это необходимо с точки зрения UX
Хорошо. Сейчас напишу развернутый ответ.
Можете ли вы сейчас создать класс для этого тега tr
? - (ibb.co/kDDx4xC) Иначе при обращении к тегам будет очень длинный селектор.
@sergeykuznetsov да, я могу добавить через javascript
@sergeykuznetsov на самом деле неважно, нет, я не могу. длинные селекторы в порядке
Невозможно выбрать n-й элемент по классу. Вам придется использовать что-то вроде
.weekParent div:first-of-type{}
.weekParent div:last-of-type{}
или
.weekParent div:nth-of-type(2){}
Так...
Для того, чтобы получить эффект сплошной линии событий, вам нужно добавить этот селектор:
.wpb_wrapper table tbody tr:nth-child(3) td:not(.no-events) .calnk.category_1 {
margin-left: -3px;
margin-right: -3px;
}
margin-left
и margin-right
расширят поля до нужной ширины, где мне будет достаточно 3 пикселей.
Этот селектор устанавливает заданные правила для всех .calnk.category_1
, с учетом исключения класса .no-events
, тэга td
.
Если вам нужно сделать эффект сплошной полосы для всех линий, то исключите из селектора класс .category_1
. Это должно выглядеть так:
.wpb_wrapper table tbody tr:nth-child(3) td:not(.no-events) .calnk { ... }
На этом этапе решается основа проблемы. Но также потребуется корректировка первого и последнего блока. Это можно сделать с помощью псевдоклассов first-of-type
и last-of-type
. А вот с этим, я думаю, вы легко справитесь :)
Я сделал это в css. Так ли это необходимо? - ibb.co/dM6Sh85