Центральная навигация по ссылкам панели - PullRequest
0 голосов
/ 21 февраля 2019

Я не могу отцентрировать кнопки панели навигации.Есть ли способ сделать это в файле CSS?Я пробовал центрировать, но это не сработало.

HTML

<div class="navbar">
  <a href="#home">Home</a>
  <a href="#news">News</a>
  <a href="#contact">Contact</a>
</div>

CSS

.navbar {
  overflow: hidden;
  background-color: #333;
  position: fixed; /* Set the navbar to fixed position */
  top: 0; /* Position the navbar at the top of the page */
  width: 1300px; /* Full width */
  z-index: 99999;
  text-align: center;
}

/* Links inside the navbar */
.navbar a {
  float: left;
  display: block;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

/* Change background on mouse-over */
.navbar a:hover {
  background: #ddd;
  color: black;
}

Ответы [ 6 ]

0 голосов
/ 21 февраля 2019

.navbar {
  overflow: hidden;
  background-color: #333;
  position: fixed; /* Set the navbar to fixed position */
  top: 0; /* Position the navbar at the top of the page */
  width: 100%; /* Full width */
  z-index: 99999;
  text-align: center;
  margin: 0 auto;
}
.navbar ul {
	display:inline-block;
	list-style-type: none;
}
/* Links inside the navbar */
.navbar a {
  display: inline-block;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

/* Change background on mouse-over */
.navbar a:hover {
  background: #ddd;
  color: black;
}
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
 <div class="navbar">
      <a href="#home">Home</a>
      <a href="#news">News</a>
      <a href="#contact">Contact</a>
    </div>
</body>
</html>
You have to remove float left and add display: inline-block;
.navbar a {
  float: left;
  display: block;
0 голосов
/ 21 февраля 2019

Есть несколько ошибок в вашем стиле элементов.Некоторые из них пытаются выровнять плавающие элементы, назначают блок отображения линейным связям и определяют эмпирические длины, когда вы стремитесь к полной длине.

Попробуйте вместо этого:

html,body {
  margin: 0; /* overwrite browser defaults */
}

.navbar{
  overflow: hidden;
  background-color: #333;
  position: fixed; /* Set the navbar to fixed position */
  top: 0; /* Position the navbar at the top of the page */
  width: 100%; /* Full width */
  z-index: 99999;
  text-align: center;
}

/* Links inside the navbar */
.navbar a {
  display: inline-block;
  color: #f2f2f2;
  padding: 14px 16px;
  text-decoration: none;
}

/* Change background on mouse-over */
.navbar a:hover {
  background: #ddd;
  color: black;
}
<div class="navbar">
  <a href="#home">Home</a>
  <a href="#news">News</a>
  <a href="#contact">Contact</a>
</div>
0 голосов
/ 21 февраля 2019

Если я вас правильно понимаю, вам нужно выровнять ссылки в центре панели навигации, для этого вам нужно сделать:

CSS:

/* Links inside the navbar */
.navbar a {
  /* float: left;  remove this property */
  display: inline-block; /* change display: block to inline-block */
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

Вы можете увидетьпример на: https://jsfiddle.net/4gy2japx/

0 голосов
/ 21 февраля 2019

Вы можете использовать

<div class="navbar">
  <div style="display: inline-block;">
     <a href="#home">Home</a>
     <a href="#news">News</a>
     <a href="#contact">Contact</a>
  </div>
</div>
0 голосов
/ 21 февраля 2019

Вы будете любить flexbox - супер просто и очень полезно.

Для Flexbox требуется родитель и items .

Включите flexbox на на родительском элементе, а затем различные переключатели устанавливаются либо наparent (как в случае justify-content) или на предметах.

Вот отличная таблица для Flexbox.

Вот фантастический YouTubeучебник .

DEMO:

.navbar {
  overflow: hidden;
  background-color: #333;
  position: fixed; /* Set the navbar to fixed position */
  top: 0; /* Position the navbar at the top of the page */
  z-index: 99999;
  text-align: center;

width: 100vw; /* Full width */
  display:flex;
  justify-content:center;
  border:5px solid yellow;
}

/* Links inside the navbar */
.navbar a {
  float: left;
  display: block;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  
  border:1px solid pink;
}

/* Change background on mouse-over */
.navbar a:hover {
  background: #ddd;
  color: black;
}
<div class="navbar">
      <a href="#home">Home</a>
      <a href="#news">News</a>
      <a href="#contact">Contact</a>
</div>
0 голосов
/ 21 февраля 2019
/* Links inside the navbar */
.navbar a {
 display:inline-block;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

Я изменил ваш стиль для ".navbar a".Надеюсь, это сработает для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...