Во всех случаях у градиентов необычная форма и средствами css их не создать. Тогда их приходится вырезать из макета в формате png или svg.
Да, svg
Градиенты, которые не выходят за пределы блока можно установить через свойство background. А чтобы градиент выходил за пределы блока, приходится добавлять в html картинку и абсолютно позиционировать ее.
Для этого придумали псевдоэлементы. Вовсе незачем из-за этого засорять разметку.
Также можно задать фон для всего body или крупных секций, если пятна не привязаны к содержимому.
Но png много весит, а когда я использую svg, то градиент становится более тусклым и сайт начинает лагать, наверное из-за большой ширины и высоты картинки.
Часто помогает заглянуть в сам SVG, посмотреть, что там творится и упростить.
Сталкивался ли кто с подобным фоном?
Сейчас это тренд.
У меня 80% последних макетов такие.
Обычно редактирую макет. Делаю фрейм так, чтобы он был симметричен относительно центральной вертикальной линии. Экспортирую как svg.
Тогда не нужны абсолюты. Просто bg по центру.
spoiler
По верху clip, чтобы не нужно было возится с отрицательными bg position
maaestr0, собираете все svg в спрайт и используете.
Для фона спрайт должен быть не из symbol, а из комбинации symbol+view+use либо из svg.
Альтернатива спрайту: инлайном в css, причем можно записать в переменные.
b_tema_rd, https://jsfiddle.net/0xf2qrka/
Но при этом нужно понимать, что не должно быть зазора между пунктами основного меню и выпадашками.
Либо туда подкладывать псевдо или прозрачную часть div.
htmlclassic, закроете меню и окажетесь там же, где были. Да и при открытии тоже не окажетесь наверху.
Ну разве что, вы открываете меню ссылкой у которой в href стоит # и вы забыли preventDefault
Ну и зачем вы удалили предыдущий вопрос и создали новый?
Я не совсем понимаю, почему вы используете только display: flex; без каких-либо других настроек flex. Может быть, есть какой-то другой способ сделать это?
Вероятно, автор не знает, что у флексов есть значения по умолчанию.
Но лучше спросить у него.
Иначе можно использовать, гриды, инлайн-блоки, флоаты... таблицы в конце концов, если совсем по-старинке.
Да, svg
Для этого придумали псевдоэлементы. Вовсе незачем из-за этого засорять разметку.
Также можно задать фон для всего body или крупных секций, если пятна не привязаны к содержимому.
Часто помогает заглянуть в сам SVG, посмотреть, что там творится и упростить.
Сейчас это тренд.
У меня 80% последних макетов такие.
Обычно редактирую макет. Делаю фрейм так, чтобы он был симметричен относительно центральной вертикальной линии. Экспортирую как svg.
Тогда не нужны абсолюты. Просто bg по центру.
По верху clip, чтобы не нужно было возится с отрицательными bg position