У меня есть навигационная система, внутри которой у меня есть два div, один для логотипа, а другой для меню. Логотип div был перемещен влево. Таким образом, его родительская высота теперь такая же, как и логотип div. Но плавающее меню div находится сверху. Я хочу выровнять его посередине. Как я могу сделать то же самое? Пожалуйста, помогите мне...
Мой код приведен ниже...
HTML
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<link href="StyleSheet.css" rel="stylesheet" />
</head>
<body>
<div class="navigation clearfix">
<div class="logo">
<img src="logo.png" />
</div>
<div class="navigation-menu">
<a>HOME</a>
<a>HOME</a>
<a>HOME</a>
<a>HOME</a>
<a>HOME</a>
</div>
</div>
<script src="JavaScript.js"></script>
</body>
</html>
CSS
html {
height: 100%;
}
body {
height: 100%;
margin: 0;
}
p {
margin: 0;
}
img {
display: block;
}
.navigation {
background-color: yellow;
}
.logo {
float:left;
}
.clearfix:after {
content: "";
display: table;
clear: both;
}
.navigation-menu {
float:right;
background-color:red;
}
И вот здесь скрипка...
Не определяя фиксированную высоту, вы можете изменить макет для использования display:table
чтобы упростить вертикальное выравнивание.
Попробуйте изменить свой CSS:
html {
height: 100%;
}
body {
height: 100%;
margin: 0;
}
p {
margin: 0;
}
img {
display: block;
}
.navigation {
background-color: yellow;
display:table;
width:100%;
}
.logo {
display:table-cell;
}
.navigation-menu {
text-align:left;
display:table-cell;
text-align:right;
vertical-align:middle;
}
.navigation-menu a{
background-color:red;
float:right;
padding:0 5px;
}
Это то, что вам нужно сделать
.navigation-menu {
border:1px solid black;
background-color:red;
margin-left:40px;
}
.navigation-menu a{
margin-left:20px;
}
вы пытаетесь ".navigation-menu" вы должны использовать для "a" тега привязки
Попробуй это:
html {
height: 100%;
}
body {
height: 100%;
margin: 0;
}
p {
margin: 0;
}
img {
display: block;
}
.navigation {
background-color: yellow;
display:table;
width:100%;
}
.logo {
display:table-cell;
}
.navigation-menu {
text-align:left;
display:table-cell;
text-align:right;
vertical-align:middle;
}
.navigation-menu a{
background-color:red;
float:right;
padding:0 5px;
}
Надеюсь, поможет! :)
Вы можете установить line-height
:
.navigation-menu {
float:right;
background-color:red;
line-height:120px;
}