Предполагаю, что кастомизация боковой панели будет добавлена со временем, но пока я хотел бы убрать ссылку «Значки» или хотя бы скрыть её внутри раздела «Ещё…».
Стоит ли пока просто использовать CSS для её скрытия?
Я не совсем понимаю, как правильно написать CSS. Контейнеры со ссылками имеют класс sidebar-section-link-wrapper и не имеют id. Когда я пытаюсь скрыть тег a с помощью правила a.sidebar-section-link-badges { display: none; }, ничего не скрывается.
nth-child очень полезен во многих случаях, однако в данном случае, вероятно, это рискованно. Поскольку он опирается исключительно на номера, для этого потребовалась бы гарантия того, что значки (Badges) останутся на тех же позициях.
Если что-то будет добавлено, удалено или перемещено перед ними, позиция значков изменится, что может привести к их отображению, скрытию других элементов, и это может остаться незамеченным.
Псевдокласс :has() идеально подходит для этой задачи, но, к сожалению, его поддержка всё ещё ограничена: в частности, он отключён по умолчанию в Firefox и отсутствует во многих мобильных браузерах.
Если скрытие не является для вас критичным, то есть допустимо скрывать элемент везде, где это возможно для лучшего пользовательского опыта, но оставлять видимым в браузерах, которые пока не поддерживают :has(), вы можете использовать следующий селектор:
Я просто скопировал и вставил это в компонент своей старой темы (который делал то же самое с прежним меню-бургером), и всё заработало! Большое спасибо, и ещё раз спасибо всем остальным.
Приношу извинения. Всё работает. Я закомментировал это из-за бага со ссылкой «Ещё».
Суть бага в том, что ссылка отображается, даже если в меню «Ещё» нет пунктов. Учитывая количество пунктов на моём форуме, наличие опции «Значки» (которую я не хочу видеть) хотя бы даёт ссылке «Ещё» какую-то работу! (Проблема остаётся: когда вы находитесь на самой странице «Значки», бесполезная ссылка «Ещё» всё ещё там.) "More..." shows in sidebar when there is nothing more
По какой-то причине функция «вставить URL поверх текста для создания гиперссылки» не сработала при редактировании этого сообщения.
Понятно. На самом деле, я думаю, это не баг, так как опции меню «Ещё» там присутствуют, но скрыты, поэтому оно не пустое. Но если я правильно понял, вы скрываете всё содержимое меню «Ещё»? Если это так, то, на мой взгляд, лучше скрыть весь раздел «Ещё»?
Чтобы скрыть выпадающее меню «Ещё» со всех страниц:
// скрыть меню «Ещё» со всех страниц
.sidebar-more-section-links-details {
display: none;
}
Если вы хотите скрыть его на конкретной странице, вы можете использовать класс body для адресации.
Я считаю это ошибкой, потому что, на мой взгляд, опция «Ещё» не должна появляться, если нет ничего дополнительного, и, следовательно, нажатие на «Ещё» должно иметь какой-то эффект. Сообщение об ошибке находится здесь: "More..." shows in sidebar when there is nothing more