#twitter-bootstrap #bootstrap-5
#twitter-bootstrap #начальная загрузка-5
Вопрос:
Так что я действительно в тупике, потому что я буквально использую пример документации, а он просто отказывается работать. У меня есть
- Импортный Бустреп
- Импортный Поповер
- Инициализированные всплывающие подсказки
- Инициализированное всплывающее окно
Все в соответствии с документацией.
Затем я добавил следующий код для проверки всплывающих окон:
<button type="button" class="btn btn-lg btn-danger" data-bs-toggle="popover" title="Popover title" data-bs-content="And here's some amazing content. It's very engaging. Right?">Click to toggle popover</button>
Это тот же код, что и в документации, всплывающее окно отображается, но неправильно, оно отображает только заголовок, а не содержимое. И как только первое переключение завершено, иначе говоря, как только вы показываете, а затем скрываете всплывающее окно, оно больше не отображается.
Кстати, вот мой код:
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css" integrity="sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2" crossorigin="anonymous">
<link href="styles.css" rel="stylesheet">
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C OGpamoFVy38MVBnE IbbVYUew OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js" defer></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ho j7jyWK8fNQe A12Hb8AhRq26LrZ/JpcUGGOn Y7RsweNrtN/tE3MoK7ZeZDyx" crossorigin="anonymous"></script>
<script src="./assets/scripts/init-tooltips.js" defer></script>
<script src="./assets/scripts/init-popover.js" defer></script>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<nav class="navbar sticky-top navbar-expand-lg navbar-light bg-light">
<a class="navbar-brand" href="#">About me</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">
<a class="nav-link" href="./index.html">Introduction</a>
</li>
<li class="nav-item">
<a class="nav-link" href="./life.html">Life</a>
</li>
<li class="nav-item active">
<a class="nav-link" href="./life.html">Education</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Projects</a>
</li>
</div>
</nav>
</head>
<body>
<h1 class="center">Education</h1>
<figure class="center">
<img src=./assets/images/1.jpeg>
<img src=./assets/images/2.jpeg>
<img src=./assets/images/3.jpeg>
<img src=./assets/images/4.jpeg>
<img src=./assets/images/5.jpeg>
</figure>
<button type="button" class="btn btn-lg btn-danger" data-bs-toggle="popover" title="Popover title" data-bs-content="And here's some amazing content. It's very engaging. Right?">Click to toggle popover</button>
<p>test</p>
</body>
Ответ №1:
Это потому, что вы используете data-bs-popover
и data-bs-content
на кнопке, и это форматирование Bootstrap 5.
Вы вызываете Bootstrap 4 с
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3...........</script>
Используйте data-popover
и data-content
для начальной загрузки 4.
Комментарии:
1. аааа! Спасибо! Я прохожу курс Cs50 в Гарварде, и они дали нам предварительно заполненный HTML-файл с пробелами для заполнения. Однако вся документация предназначена для bootstrap 5! Теперь все работает! Спасибо!
2. Возможно, более простой способ — вызвать v5 вместо v4, если весь ваш контент отформатирован таким образом. Вообще говоря, вам просто нужно не забыть вставить
-bs-
в середину для форматирования, если что-то окажется не на своем месте.