0 Пользователей и 1 Гость просматривают эту тему.
  • 6 Ответов
  • 285 Просмотров
*

ingavr

  • Захожу иногда
  • 283
  • 0 / 0
В общем задача примерно такая: есть шапка сайта, она же и меню, и в нёй модуль регистрации, а ещё и поиск.
Естественно при маленьком экране эта шапка выглядит уё... чудовищно.
Выход - сделать сворачиваемое меню. Но, поскольку это шапка, там есть ещё логотип сайта, и то, что я описал выше. Сделать сворачиваемым только меню - не выход, так как оставленные логотип, поиск, вход/регистрация (при входе это аватар пользователя) всё равно занимают много места.
Сделал таким образом, чтобы сворачиваемое меню содержало не только собственно меню, но и поиск и аватар пользователя. А поскольку очерёдность расположения этих модулей изначально на большом экране меня вполне устраивает, а вот в мобильном меню - совсем нет.
Для того, чтобы поменять очерёдность расположения в свёрнутом меню (выезжает при нажатии на кнопку), добавил в файл шаблона на нужные мне места те же модульные позиции что и в десктопном варианте. Естественно с добавлением собственных классов для этих позиций.
Когда ширина экрана достигает определённого размера, те позиции, которые до этого работали, скрываю через display:none, а включаю вместо них другие (те же модульные позиции в других местах, которые до этого были отключены) через display:block.
В общем-то работает нормально, но сомнения у меня вот в чём. получается что модуль загружается два раза (как бы дублируется) из-за того, что одна позиция в двух местах. Но, пока одна позиция видна, вторая скрыта и наоборот.
Правильно ли так делать? или необходимо использовать другие методы?
Простите, если я не совсем понятно описал ситуацию. Если что надо уточнить - говорите.
Спасибо!
*

effrit

  • Легенда
  • 9622
  • 1062 / 13
  • effrit.com
да это вполне вариант.
на самом деле мобильное меню - это часто отдельный модуль с доблями главного или чуть с другим составом пунктов.

на счет вариантов.
а) использовать flex, там можно менять очередность блоков через CSS
б) таскать блоки посредством JS, в jQuery это 1-2 строки всего

в общем, если хочется заморочиться, то есть поле для деятельности  ;)
*

ingavr

  • Захожу иногда
  • 283
  • 0 / 0
да это вполне вариант.
на самом деле мобильное меню - это часто отдельный модуль с доблями главного или чуть с другим составом пунктов.

на счет вариантов.
а) использовать flex, там можно менять очередность блоков через CSS
б) таскать блоки посредством JS, в jQuery это 1-2 строки всего

в общем, если хочется заморочиться, то есть поле для деятельности  ;)
То есть тот вариант что у меня вполне подходящий? Поисковики не будут ругать меня за такое? там же и ссылки есть (например в аватаре пользователя) или пока блок скрыт - его даже поисковики не видят?
А заморачиваться с JS я не смогу, потому что вообще не знаю его.
*

ingavr

  • Захожу иногда
  • 283
  • 0 / 0
для Яндекс лучше скрыть дубли блоков
https://yandex.ru/support/webmaster/controlling-robot/html.html#noindex
Хмм, а без js можно менять эти теги для одного и того же блока в разных ситуациях? Открывать когда виден блок и закрывать когда скрыт?
 
*

effrit

  • Легенда
  • 9622
  • 1062 / 13
  • effrit.com
*

ingavr

  • Захожу иногда
  • 283
  • 0 / 0
Точно. Как-то не подумал про это. Спасибо!  *DRINK*
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как правильно вставить виджет в модуль?

Автор sakha.rap

Ответов: 3
Просмотров: 150
Последний ответ 29.11.2019, 15:41:37
от AlexB
Как сделать некликабельным родительский пункт меню?

Автор Nikotin818

Ответов: 3
Просмотров: 122
Последний ответ 25.11.2019, 20:34:04
от beliyadm
Как создать верхнее меню навигации?

Автор Anna_N

Ответов: 5
Просмотров: 131
Последний ответ 15.11.2019, 20:20:54
от Any_Color
Вход и регистрация в меню, как это сделать?

Автор phvsfpgs

Ответов: 6
Просмотров: 130
Последний ответ 14.11.2019, 18:38:34
от Any_Color
Как закрыть внутренние ссылки от индексации в модулях и меню?

Автор polezniy

Ответов: 0
Просмотров: 98
Последний ответ 04.11.2019, 12:39:09
от polezniy