Есть ли способ установить ширину на 100% экрана?

#javascript #html #css

#javascript #HTML #css

Вопрос:

У меня есть чистая веб-страница в формате HTML / CSS. Я создал выпадающее меню, но не могу установить его на полную ширину.

Вот его кодовое описание.

https://codepen.io/SynergyOfLife/pen/ExyZdZz

Я использую Bootstrap 4.5.2.

Мой .header div не заполняет 100% ширины, что бы я ни пытался. Я хочу, чтобы он заполнял 100%, с текстом примера под ним.

Помощь была бы признательна, спасибо.

Ответ №1:

Добавьте цвет фона в заголовок вместо li. Затем удалите float из li и замените его на display inline-block . Вы также можете использовать гибкое отображение на ul.

Комментарии:

1. Хороший ответ — я должен был понять это вместо того, чтобы кто-то вставлял код; Я кое-что узнал. Спасибо.

Ответ №2:

Причина, по которой вы не смогли решить эту проблему, заключалась в том, что вы устанавливали float:left для <ui> элемента, который заставляет ваш контейнер пользовательского интерфейса перемещаться влево, ограничивая его, чтобы он занимал всю ширину страницы.

Решаемая

Я исправил CSS так, как вы хотите

Предлагаемый CSS

 .header{
  width:100%;
}
.header .main-navigation ul:nth-child(1){
  display:flex;
  width:100%;
  justify-content:center;
  background-color: red;
}
.header .main-navigation ul li {
  padding: 20px 0;
  background-color: red;
}
.header .main-navigation ul li a {
  padding: 0 20px;
}

.header .main-navigation ul li ul {
  position: absolute;
  margin-top: 10px;
  visibility: hidden;
  opacity: 0;
  transition: all 200ms ease-in-out;
}

.header .main-navigation ul li:hover ul {
  visibility: visible;
  opacity: 1;
  transform: translate(0, -10px);
}

.header .main-navigation ul li ul li {
  clear: left;
  padding-left: 10px;
  width: 180px;
}
  

Результат
введите описание изображения здесь

Также, если вы хотите <li> , чтобы элементы, то есть параметры меню, отображались слева, вы можете просто изменить значение justify-content на flex-start вместо center .

Скажите мне, хотели ли вы того же или нет 🙂

Комментарии:

1. Хороший ответ! Мне нравится мыслительный процесс в поиске решения, ты меня кое-чему научил.

2. Это то, что я хотел 🙂 и да, я рекомендую вам узнать о display:flex его супер удивительном. Как только вы получите это, вы закончите структурирование и позиционирование вашего div в нужных местах с правильными стилями. И если вам понравился ответ выше, пожалуйста, дайте ему оценку. Спасибо!

3. У меня всего 5 репутации, и мне нужно 15 для повышения. Я проголосую, как только получу 15 репутации!

4. О, моя ошибка, которую я не видел! Не проблема, хорошо, тогда я подниму ваш вопрос, чтобы довести вас до 15 😉

5. Хотелось бы, чтобы таких пользователей, как вы, было больше. Спасибо!