Проблемы со стилем простого кода между Bootstrap ~ 3.7 и последней Bootstrap (4) - PullRequest
0 голосов
/ 28 января 2019

Я скачал довольно простой код с Coursera для класса Responsive Web Design, чтобы возиться с переключением панелей навигации, и с тем, что похоже на Bootstrap приблизительно 3.7 (поставляется с кодом класса), довольно простой код работает нормально.

Однако, с новой загрузкой последней Bootstrap, код не отображается правильно, я не могу понять, в чем проблема.Я приложил скриншоты.Обратите внимание, что в неправильно отображаемых элементах при нажатии на маленькую плоскую кнопку будут отображаться другие элементы, но только в течение примерно половины секунды, прежде чем они исчезнут.У нескольких других студентов была такая же проблема, и они писали об этом на форумах, но ни один из модераторов или наставников не смог правильно посоветовать, поэтому я прошу вас, ребята, помочь!

Что такоепроблема здесь?Это классы / свойства класса, которых нет в последней Bootstrap?

Правильное отображение страницы (как это выглядит в BS ~ 3.7):

enter image description here

Как выглядит с BS 4.2, неправильно отображается:

enter image description here

Как это выглядит с новой темой Bootswatch (Slate), неправильно отображается:

enter image description here

<!DOCTYPE html>
<html lang="en">
  <head>
   <title></title>

    <link href="css/bootstrap.css" rel="stylesheet">

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and     media queries -->
    <!-- WARNING: Respond.js doesn't work if you view the page via file://     -->
    <!--[if lt IE 9]>
      <script     src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js">    </script>
    <![endif]-->
  </head>
  <body>

      <nav class="navbar navbar-default">
        <div class="container-fluid">
            <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
              <span class="sr-only">Toggle navigation</span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
        </button>
        <a class="navbar-brand" href="#">Edward MonteVerde</a>
      </div>
      <div id="navbar" class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li class="active"><a href="#">Home</a></li>
          <li><a href="#">CV</a></li>
          <li><a href="#">Portfolio</a></li>

          <!-- here is the dropdown menu -->

          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" 
                aria-expanded="false">Contact <span class="caret"></span></a>
            <ul class="dropdown-menu">
              <li><a href="#">Email</a></li>
              <li><a href="#">Skype</a></li>
              <!-- can you add another item to the dropdown? -->
            </ul>
          </li>

          <!-- the end of the dropdown menu -->

        </ul>
      </div><!--/.nav-collapse -->
    </div><!--/.container-fluid -->
  </nav>


<script src="js/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>

   </body>
</html>

Ответы [ 2 ]

0 голосов
/ 29 января 2019

ПРИМЕЧАНИЕ: Если оплачиваемые профессора и / или наставники не могут сказать вам, как решить эту основную проблему, прекратите платить им и попытайтесь вернуть любые деньги, которые вы им уже дали.

Обычно вы не можете обновить «основные» версии инструмента, не внеся существенных изменений в ваше приложение / код.Это общее правило для всего, что использует номера версий (например, большинство программного обеспечения, и особенно что-либо для npm).«Основная» версия - это самый левый номер в номере версии.

v2.3
v3.1
v4.21

Подробнее о семантическом управлении версиямиздесь: https://semver.org/

В вашем случае вы переходите с основной версии 3 на основную версию 4. Беглый взгляд на загрузочную панель в версии 4 , множество вещейизменились по сравнению с кодом, который вы опубликовали.Я создал скрипку с обновленным кодом (обратите внимание, измените размер панели предварительного просмотра, чтобы увидеть, как она переключается с гамбургера на расширенную).

https://jsfiddle.net/m8gfhr95/

Вот базовый фрагмент.Обратите внимание на классы элемента nav, а также элементы li и a:

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <a class="navbar-brand" href="#">Navbar</a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>

  <div class="collapse navbar-collapse" id="navbarSupportedContent">
    <ul class="navbar-nav mr-auto">
      <li class="nav-item active">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
      </li>
    </ul>
  </div>
</nav>
0 голосов
/ 28 января 2019

Это классы / свойства класса, которых нет в последней Bootstrap?

Да.Между основными изменениями версий (от 3 до 4), также есть серьезные обновления.Например, Bootstrap 4 использует flex для Grid System вместо float, и имена классов также изменились (pull-right теперь float-right).

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

Если этот пример является фрагментом по умолчанию Bootstrap 3, рассмотрите вариант с версией 4 вместо этого - как правило, примеры в документации остаются теми же.,В противном случае рассмотрите руководство по миграции для nav между этими версиями, хотя лучше всего начинать с фрагмента Bootstrap 4 и адаптировать его под дизайн.

...