Гамбургер-меню

Привет! Я новичок в Discourse и надеюсь, что это полезное наблюдение: меню-гамбургер никогда не меняется на иконку «закрыть», поэтому я часто нажимаю на него, думая, что откроется ещё что-то, но оно неожиданно закрывается, хотя уже было открыто. У меня есть несколько строк CSS, которые я планирую добавить в виде темы в категорию «theme component», когда у меня будет больше доступа. К счастью, в коде есть правильные классы, поэтому мы можем использовать их в зависимости от того, отображается боковая панель или нет.

discourse-hamburger-toggle

.btn-sidebar-toggle::before {
    transition:.2s ease-out all;
    opacity:0;
    content: "+";
    font-size: 32px;
    transform: rotate(0deg);
    position:absolute; left:12px;
}

.btn-sidebar-toggle  svg {
    transition:.2s ease-out all
}

body.has-sidebar-page .btn-sidebar-toggle::before {
    opacity:1;
    transform: rotate(45deg);
}

body.has-sidebar-page .btn-sidebar-toggle svg {
    opacity:0
}
4 лайка

Спасибо за это! Я также предлагаю переместить кнопку закрытия (X) внутрь самого меню, в самый верх. (В этом положении я бы также добавил текст «Закрыть меню» на кнопку и, возможно, использовал бы стрелку, указывающую влево, вместо крестика.)

← Закрыть меню или << Закрыть меню

4 лайка

Я думаю, что большинство людей используют Discourse с постоянно включённой боковой панелью (мне было бы интересно увидеть статистику по разным форумам). Наличие большого крестика, который, так сказать, предлагает закрыть часть макета, которая для многих пользователей по сути постоянна, показалось бы мне немного странным. :thinking:

3 лайка

Я согласен, что редко используемая иконка «гамбургер-закрыть», занимающая самое ценное место в верхнем левом углу окна — идеальную цель, — это неоптимально.

Вот что Cloudflare разместила внизу своей боковой панели:

Кажется, кто-то, кто знает CSS (или, возможно, DOM) чуть лучше меня, мог бы довольно быстро создать компонент темы, но, вероятно, правильным решением будет PR, исправляющий шаблон.

Это даже могло бы быть первым элементом в боковой панели…

3 лайка

Как снова открыть его, если кнопка находится в свернутой боковой панели?

2 лайка

Ой!

Ты действительно очень точно подметил!

Я никогда не говорил, что я UX-специалист.

. . . хм . . . Ладно

Они делают так, чтобы боковая панель сворачивалась вот так:

а элемент внизу разворачивает её обратно.

Так что, возможно, решение заключается не в удалении боковой панели, а в её сворачивании. Тогда, если вы знаете, что означают иконки и цвета, сможете пользоваться сайтом, даже не разворачивая панель.

Почти на каждом сайте кнопка «Домой» или иконка находится в верхнем левом углу, и размещение там «гамбургер-меню» кажется неправильным.

3 лайка

Я понимаю, что это другая ситуация, но я подозреваю, что иконка «гамбургер» по-прежнему находится в правом верхнем углу на мобильных устройствах, потому что на небольшом сенсорном экране случайное нажатие на логотип, если бы он был в левом верхнем углу рядом с чем-то вроде представления на рабочем столе, было бы довольно частым. Хотя то же самое можно сказать и о его расположении рядом с иконками аватара и поиска. :woman_shrugging:t2:

2 лайка

Ах да, это имеет смысл. Я думаю, у Googlemail есть похожий вариант, хотя у них кнопка-гамбургер остаётся в верхнем левом углу:

2 лайка

С этой темой вы увидите, что гамбургер-меню находится на боковой панели, так что это не совсем верхний левый угол:

2 лайка

Кстати, я предпочитаю верхний левый угол для баланса и внешнего вида UX-дизайна, и у меня нет проблем с его функцией открытия-закрытия.

1 лайк

Раньше я с этим особо не работал, но там тоже есть функция «расширения при наведении», что довольно приятно.

Кажется, у них более выразительный набор иконок, что упрощает расшифровку в свернутом виде, чем может показаться при первом взгляде на интерфейс от Meta. Хотя, если начать добавлять такие элементы, как несколько меток, возникает та же двусмысленность, что и у наших тегов:

1 лайк

Нет, теги при наведении и названия категорий. Наведение также не идеально подходит для сенсорных интерфейсов. Использование режима для настольных ПК с функциями наведения на iPad работает не очень хорошо.

1 лайк

Мне нравится эффект наведения, главное, чтобы тап по экрану работал так же, как и клик мышью.

Вот один из моих любимых стилей, реализованный на сильно кастомизированном сайте на Ghost CMS, который я создал для клиента: при наведении курсора в любую область боковой панели вертикальный стек ссылок для клика/тапа плавно выезжает, открывая каскадные подменю. Это ощущается очень плавно и удобно для навигации. Вы можете попробовать это здесь:

Вы проверяли это на мобильном устройстве? Очень много багов.

Привет :wave: Спасибо за то, что поделились.

Я использую комбинацию иконок «увеличить отступ» и «уменьшить отступ» для переключения боковой панели на моём сайте.

увеличить отступ (показать боковую панель)
indent-solid

уменьшить отступ (скрыть боковую панель)
outdent-solid

2 лайка

Другой вариант (для настольных компьютеров) продемонстрирован на Flarum

Интересно, считает ли кто-то ещё, что этот вопрос нужно вынести на обсуждение в команду Core.

Многие крупные сообщества используют в Discourse старый интерфейс (без боковой панели) именно из-за этого.

Мне боковая панель казалась очень полезной для организации таких больших сообществ, как наше, но текущее поведение в Discourse прямо противоположное.

Кажется, что нетехнические пользователи просто не знают, как пользоваться нашими форумами из-за таких небольших, но существенных деталей.

Всегда есть куда расти :slight_smile:

А пока я тестирую этот компонент темы:

2 лайка

У меня тоже такой же вопрос.

О, я создал компонент темы для этого