Случаи Flashcards
Случай из 23degree:
Кнопка-бургер был достаточно далеко от открывающегося меню, пыталась двигать его ближе к меню по клику и раздвигать их дальше друг от друга при закрытии методом animate. Получилась неадаптивная хуита, которую можно было бы перебить только сотней запросов в скрипте, т.е. говнокодом. Особенно это заметно, когда в навбаре помимо бокового меню должны оставаться другие элементы, прикреплённые абсолютом (логотип, телефон и т.д - по горизонтали). Меню всегда должно быть рядом с кнопкой.
Осторожно выбирать задания с замысловатым фоном:
помнить про тренировочный сайт black and white, где текст на фоне в стиле звёздных войн дался тяжело: при разных разрешениях он не pixel-perfect;
Яндекс-карты: перемена центра в зависимости от ширины экрана
- на тренировочном сайте “гранит”
Яндекс-карты: одновременное добавление в код функций .enable и .disable
- на тренировочном сайте “гранит”
Передача ширины ВНУТРЕННИХ блоков полоске над внешним блоком с марджинами.
Aerolab: передача ширины ВНУТРЕННИХ блоков полоске над внешним блоком с марджинами. Вообще, костыль, лучше использовать две разные полоски: одна до flex-wrap, шириной 100% и припаянная абсолютом к внешнему длоку, а другая - после flex-wrap, шириной 100% и припаянная уже к внутреннему блоку. Для подсчёта ширины задать внешнему блоку display:inline-flex (ишак от 8) или display: inline-block; Можно использовать костыль, если внешний блок должен быть шириной 100% экрана, полоска - по центру и шириной меньше 100% и это нельзя исправить.
Выравнивание по левому краю элемента, который, в свою очередь, отцентрирован.
Aerolab: Необходимо было выровнять заголовки и полоски по левому краю контейнера, а сам контейнер - по центру. Футер выровнять по левому краю центрального контейнера, но сам он шириной от центра до правого края. Что сделано? Костыль: Марджин посчитан через JS, ширина футера - JS. В итоге бургер бегал вправо-влево при загрузке. Что нужно было сделать? Для футера оставить JS по ресайзу (смена ориентации не поддерживается и вообще выпилена). А остальное - поместить в <div class="cont_center"> и шириной и по центру, в разметке - между или <div class="bg"> и outer-дивом. Содержимое <div class="cont_center"> - по левому краю, необходимым объектам - display: inline-block;</div></div></div>