сделать всплывающее меню навигации

0

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

Он должен выглядеть и всплывать так:

http://ista230.com/images/assignments/7/page1.jpg

http://ista230.com/images/assignments/7/page2.jpg

Прямо сейчас я просто пытаюсь заставить divs всплывать, но я застреваю. Сначала я использовал ul для моих навигационных ссылок, но я видел некоторые другие примеры с использованием div. Так вот, где я нахожусь.

Heres HTML для навигации:

<nav id="nav">
       <a href="#"><div class="navItem">Home</div></a>
       <a href="#"><div class="navItem">Upcoming Flights</div></a>
       <a href="#"><div class="navItem">About Us</div></a>
       <a href="#"><div class="navItem">Travel Guide</div></a>
       <a href="#"><div class="navItem">Contact Us!</div></a>
</nav>

И вот что я до сих пор использовал для CSS:

/* Navigation */
nav{
    margin-left:5%;
    margin-right:5%;
    margin-bottom:5%;
    margin-top:10%;
    width:100%;
}

#nav a{
    text-decoration:none;
    color:black;
}

div.navItem
{

    list-style:none;
    padding:2% 4%;
    display:inline;
    background-color:orange;
    border:5px solid #597CBB;
    border-radius:10px;
}
.navItem div{

    -moz-transition: height 1s ease; /* Firefox 4 */
    -webkit-transition: height 1s ease; /* Safari and Chrome */
    -o-transition: height 1s ease; /* Opera */
    -ms-transition: height 1s ease; /* IE9 (maybe) */
    transition:height 1s ease;

}

.navItem:hover div
{
    height:500px;
}
  • 1
    Ваш css говорит .navItem:hover div , но «navItem» - это класс самого div, у которого нет дочернего div. Я не хочу выполнять ваше задание за вас, поэтому просто скажу, что вам нужен селектор :hover для чего-то другого. Кроме того, я думаю, что использование списка было бы хорошо для вас здесь. Это список ссылок.
  • 0
    Так что-то вроде div.navItem: hover?
Показать ещё 5 комментариев
Теги:
web

1 ответ

0

Как и davidpauljunior, вам нужно изменить .navItem:hover div to div.navItem:hover, потому что вы не navItem div внутри класса navItem - вы сами модифицируете div с классом navItem.

Вам также необходимо изменить отображение класса navItem для display:inline-block чтобы вы могли установить высоту div. Вы не можете установить высоту display:inline элемент.

Вот изменения, которые нужно внести в css:

/* Navigation */
nav{
    margin-left:5%;
    margin-right:5%;
    margin-bottom:5%;
    margin-top:10%;
    width:100%;
}

#nav a{
    text-decoration:none;
    color:black;
}

div.navItem
{

    list-style:none;
    padding:2% 4%;
    display:inline-block;
    background-color:orange;
    border:5px solid #597CBB;
    border-radius:10px;
    -moz-transition: height 1s ease; /* Firefox 4 */
    -webkit-transition: height 1s ease; /* Safari and Chrome */
    -o-transition: height 1s ease; /* Opera */
    -ms-transition: height 1s ease; /* IE9 (maybe) */
    transition:height 1s ease;

}

div.navItem:hover{
    height:500px;
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню