Здравствуйте! У меня возникла проблема с использованием свойства display: flex. Элементы не перемещаются так, как мне хотелось бы, или перемещаются не в те места, где нужно. Можете подсказать, в чем может быть дело? Я оборачиваю контейнер с флексом, но результата все равно не получается. Вот мой код: <pre><code class="html"><!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Burger Langer</title> <link rel="stylesheet" href="style.css"> </head> <body> <header class="header"> <div class="container"> <img src="./images/icons/logo.png" alt="" class="logo"> </header> <ul class="header_nav"> <ul class ="header_list"> <li><a href="#!">HOME</a></li> <li><a href="#!">PAGES</a></li> <li><a href="#!">OUR OFFER</a></li> <li><a href="#!">PRICING</a></li> <li><a href="#!">SHOP</a></li> </ul> <a href="" class="btn">Order now</a> </nav> </div> </header> </body> </html></code></pre> <pre><code class="css">@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap'); body { font-family: "Roboto", serif; background-color: #1c1c1c; color: #fff; } a { color:#fff; text-decoration: none; } ul { list-style: none; padding: 0; margin: 0; } .container { } .header .container { display: flex; justify-content: space-between; align-items: center; } .logo { } .header_nav { } .header_list { } .btn { }</code></pre>
Судя по вашему коду, проблема может быть связана с тем, что вы неправильно обернули `header_nav` и `header_list` в структуре HTML. Вы пытаетесь использовать элементы, связанные с навигацией, но они не находятся внутри флекс-контейнера. Кроме того, у вас есть опечатки в HTML, например, закрывающий тег `<nav>` неправильно написан: вместо `<nav>` вы используете `</nav>`, что приводит к ошибке в структуре страницы. Попробуйте исправить ваш HTML-код следующим образом: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Burger Langer</title> <link rel="stylesheet" href="style.css"> </head> <body> <header class="header"> <div class="container"> <img src="./images/icons/logo.png" alt="" class="logo"> <nav class="header_nav"> <ul class="header_list"> <li><a href="#!">HOME</a></li> <li><a href="#!">PAGES</a></li> <li><a href="#!">OUR OFFER</a></li> <li><a href="#!">PRICING</a></li> <li><a href="#!">SHOP</a></li> </ul> <a href="#" class="btn">Order now</a> </nav> </div> </header> </body> </html> ``` Также, вот несколько советов по вашему CSS: 1. Убедитесь, что у вас есть какие-то стили для `.header_nav`, `.header_list`, `.btn` и `.logo`, чтобы их отобразить на странице. 2. Если вы хотите, чтобы элементы внутри `.header_nav` размещались в одной линии, используйте `display: flex;` для `.header_nav` так же, как вы сделали с `.container`. Обновите ваш CSS, добавив стиль для `.header_nav`: ```css .header_nav { display: flex; align-items: center; } .header_list { display: flex; /* Это поместит элементы списка в одну строку */ margin-right: auto; /* Отодвинет кнопку вправо */ } .btn { margin-left: 20px; /* Отступ от списка */ } ``` Таким образом, при правильной структуре HTML и соответствующих стилях CSS элементы в вашем заголовке будут выстраиваться так, как вы хотите.
Во-первых, неплохо бы закрыть div внутри header.
Во-вторых, нельзя вкладывать ul прямо в ul.
В-третьих, тег a нельзя вкладывать прямо в ul.
В-четвёртых, nav нигде не открыт, чтобы его закрывать.
В-пятых, у вас один из ul не закрыт (думаю, хотели написать nav).
В-шестых, у вас попытка закрыть header, который уже закрыт.
Советую расставить все отступы и внимательно следить за тегами, какой где открывается, а какой где закрывается