Выровнять элементы по центру панели навигации, кроме одного (или нескольких) элементов - PullRequest
1 голос
/ 19 марта 2020

У меня есть это приложение , написанное на RMarkdown:

Я пытался центрировать элементы .navbar, за исключением значка справа. Этот код работает хорошо:

.navbar-nav {
  position: absolute;
  left: 50%;
  transform: translatex(-50%);
}

Но значок находится в центре:

enter image description here

Я хотел, чтобы только этот значок был в «исходной позиции». Я пытался заставить это постоянство с помощью этого кода:

.fa-question-circle {
  float: right !important;
}

Но ничего не произошло.

Редактировать

При изменении размера экрана значок .fa-question-circle выходит из меню гамбургера, когда я нажимаю на него:

enter image description here

Код меню гамбургера:

@media (max-width: 950px) {
  .navbar-header {
    float: none;
  }
  .navbar-left,.navbar-right {
    float: none !important;
  }
  .navbar-toggle {
    display: block;
  }
  .navbar-collapse {
    border-top: 1px solid transparent;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
  }
  .navbar-fixed-top {
    top: 0;
    border-width: 0 0 1px;
  }
  .navbar-collapse.collapse {
    display: none!important;
  }
  .navbar-nav {
    display: block !important;
    float: none!important;
    margin-top: 7.5px;
  }
  .navbar-nav>li {
    float: none;
  }
  .navbar-nav>li>a {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .collapse.in{
    display: block !important;
  }
}

Я почти уверен, что здесь нужно сделать корректировку:

.navbar-left,.navbar-right {
  float: none !important;
}

Я пробовал это, но это не сработало:

.navbar-left,.navbar-right {
  float: none !important; 
  display: block !important; 
  position: absolute !important;
}

Цель: Значок " "должен быть последним вариантом в меню гамбургера. Как это:

enter image description here

Ответы [ 2 ]

1 голос
/ 19 марта 2020

По ссылке, которую вы разместили, вам нужно добавить это в вашу CSS

.navbar-right {
    left: auto;
    right: 10px;
    transform: none;
}

По вашей второй проблеме

Добавить эту CSS в вашу ul

ul {
    display: flex;
    white-space: nowrap;
}
0 голосов
/ 19 марта 2020

Панель навигации с выровненным по левому и правому краям элементом.

CSS для навигации и стиля

<style>


.topnav {
  position: relative;
  overflow: hidden;
  background-color: #333;
}

.topnav a {
  float: left;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
}

.topnav a:hover {
  background-color: #ddd;
  color: black;
}

.topnav a.active {
  background-color: #4CAF50;
  color: white;
}

.topnav-centered a {
  float: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.topnav-right {
  float: right;
}

</style>

HTML код для навигации

<div class="topnav">

  <!-- Centered link -->
  <div class="topnav-centered">
    <a href="#center" class="active">Center Nav Element</a>
  </div>

  <!-- Left-aligned links (default) -->
  <a href="#left1">Left 1</a>
  <a href="#left2">Left 2</a>

  <!-- Right-aligned links -->
  <div class="topnav-right">
    <a href="#right1">Right 1</a>
    <a href="#right2">Right 2</a>
  </div>

</div>
...