С bootstrap3 до bootstrap4 , кроме основного модуля CSS был изменен с px
на rem
, компонент navs полностью переписаниспользуя flexbox с более простой структурой.
В bootstrap3 , он имеет стиль по умолчанию для navs :
.nav > li > a {
position: relative;
display: block;
padding: 10px 15px;
На самом деле, если вы добавите position: relative;
и display: block;
в ваш bootstrap4 семпл, это тоже сработает: https://jsfiddle.net/davidliang2008/ka83uLq6/4/:
.nav-pills.nav-wizard > li a {
display: block;
padding: 10px 15px;
position: relative;
...
}
In bootstrap4 , nav-link
класс добавлен для аналогичной цели, и вам не нужно создавать navs с использованием списка.Причина, по которой вы увидели в bootstrap4 , что высота была неправильной, просто потому, что больше нет вложенной структуры, такой как .nav > li > a
.
Поскольку вы задали лучший способ сделать это в bootstrap4 , дай мне посмотреть, смогу ли я выработать то, что у тебя есть в bootstrap4 .
https://jsfiddle.net/davidliang2008/5xod17mw/41/
![enter image description here](https://i.stack.imgur.com/rgpCc.png)
Если вы используете SASS / SCSS , вы можете очистить свой стиль гораздо больше, чем определить переменные для цвета границы и т. Д., А также определить миксины какфункция для установки правой границы (границ) на правильный цвет.
Центрируйте ее на странице
, поскольку .nav
уже отображается как flexbox .Вы можете легко центрировать его, добавив .justify-content-center
на .nav
:
<div class="container">
<nav class="nav nav-pills nav-wizard justify-content-center">
...
</nav>
</div>
https://jsfiddle.net/davidliang2008/5xod17mw/51/
![enter image description here](https://i.stack.imgur.com/L3ym4.png)