爬虫训练场项目重要组件,导航栏+轮播图
本篇博客从导航菜单开始学习,掌握本部分之后,我们的爬虫训练场就可以实现首页基础布局了。
导航菜单
创建水平菜单,需要用到 .nav 类,将其添加到 <ul> 元素上,然后再给每个 <li> 元素添加 .nav-item,同时将 .nav-link 类添加到内部链接上。
<ul class="nav">
<li class="nav-item">
<a class="nav-link" href="#">博客</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">下载</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">学习</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">社区</a>
</li>
</ul>

在此基础上,可以使用 .justify-content-center 类让导航居中,也可以使用 .justify-content-end 类使导航右对齐,添加 .flex-column 类可创建垂直导航。
<ul class="nav flex-column"></ul>
如果在 .nav 类上增加 .nav-tabs 类,可以将导航菜单转换为导航选项卡,此时可以使用 .active 类激活当前选项卡。
<ul class="nav nav-tabs">
<li class="nav-item ">
<a class="nav-link active" href="#">博客</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">下载</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">学习</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">社区</a>
</li>
</ul>
实现效果如下所示。

使用 .nav-pills 类可将导航菜单设置为导航胶囊,使用 .nav-justified 类可以对齐标签。
<ul class="nav nav-tabs nav-justified">
导航选项卡可以配合 Tab pane 实现动态选项卡,代码如下。
<ul class="nav nav-tabs nav-justified">
<li class="nav-item ">
<a class="nav-link active" data-bs-toggle="tab" href="#blog">博客</a>
</li>
<li class="nav-item">
<a class="nav-link" data-bs-toggle="tab" href="#download">下载</a>
</li>
<li class="nav-item">
<a class="nav-link" data-bs-toggle="tab" href="#edu">学习</a>
</li>
<li class="nav-item">
<a class="nav-link" data-bs-toggle="tab" href="#com">社区</a>
</li>
</ul>
<!-- Tab panes-->
<div class="tab-content">
<div class="tab-pane container active" id="blog">博客卡片</div>
<div class="tab-pane container fade" id="download">下载卡片</div>
<div class="tab-pane container fade" id="edu">学习卡片</div>
<div class="tab-pane container fade" id="com">社区卡片</div>
</div>
导航栏
掌握导航菜单之后,就可以学习 Bootstrap 中的导航栏了,使用 .navbar 类创建标准导航栏,然后添加响应式折叠类,即 .navbar-expand-*,其中 * 可选 xxl,xl,lg,md,sm,如果需要在导航栏中添加链接,继续添加包含 .navbar-nav 类的 <ul> 和带有 .nav-item 类的 <li>。
<nav class="navbar navbar-expand-sm bg-light">
<div class="container-fluid">
<!-- 链接 -->
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">博客</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">下载</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">学习</a>
</li>
</ul>
</div>
</nav>
该导航栏当缩小到小屏幕时,会变为垂直效果。

增加 .justify-content-center 类,可以将导航栏居中,使用 .bg-color 类可以更改导航栏背景颜色,这里还要补充一下,如果给导航栏添加 .navbar-dark 类,那默认所有链接颜色为白色,使用 .navbar-light 所有链接颜色修改为黑色。
Logo 设置
在导航栏中使用 .navbar-brand 类,可以突出页面 Logo,示例如下。
<a href="#" class="navbar-brand">
<img
src="/static/images/sucai.png"
style="width:40px;"
class="rounded-pill"
alt=""
/>
爬虫训练场</a
>

使用 .navbar-text 类,可以垂直对其导航栏中非链接的任何元素。
响应式导航栏
在爬虫训练场项目中,如果你切换到小屏幕,可以隐藏导航链接,并使用一个按钮进行替换,如果想要实现该效果,需要参考下述案例。
<nav class="navbar navbar-expand-sm bg-dark navbar-dark">
<div class="container-fluid">
<a href="#" class="navbar-brand">
<img
src="/static/images/sucai.png"
style="width:40px;"
class="rounded-pill"
alt=""
/>
爬虫训练场</a
>
<button
class="navbar-toggler"
type="button"
data-bs-toggle="collapse"
data-bs-target="#collapsibleNavbar"
>
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="collapsibleNavbar">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link" href="#">博客</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">下载</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">学习</a>
</li>
</ul>
</div>
</div>
</nav>

使用 .fixed-top 类可以使导航栏固定在页面的顶部,相应的使用 .fixed-bottom 可以将导航栏固定在底部。
轮播图
在 Bootstrap 5 中使用轮播图参考下述示例,然后修改其中关键参数即可。
<div id="demo" class="carousel slide" data-bs-ride="carousel">
<!-- 指示符 -->
<div class="carousel-indicators">
<button
type="button"
data-bs-target="#demo"
data-bs-slide-to="0"
class="active"
></button>
<button type="button" data-bs-target="#demo" data-bs-slide-to="1"></button>
<button type="button" data-bs-target="#demo" data-bs-slide-to="2"></button>
</div>
<!-- 轮播图片 -->
<div class="carousel-inner">
<div class="carousel-item active">
<img
decoding="async"
src="/static/images/l1.png"
class="d-block"
style="width:100%"
/>
</div>
<div class="carousel-item">
<img
decoding="async"
src="/static/images/l2.png"
class="d-block"
style="width:100%"
/>
</div>
<div class="carousel-item">
<img
decoding="async"
src="/static/images/l3.png"
class="d-block"
style="width:100%"
/>
</div>
</div>
<!-- 左右切换按钮 -->
<button
class="carousel-control-prev"
type="button"
data-bs-target="#demo"
data-bs-slide="prev"
>
<span class="carousel-control-prev-icon"></span>
</button>
<button
class="carousel-control-next"
type="button"
data-bs-target="#demo"
data-bs-slide="next"
>
<span class="carousel-control-next-icon"></span>
</button>
</div>
在上面的代码中,我们使用了 .carousel 类来创建轮播图,并使用了 .carousel-inner 类来包装轮播图中的图像。每个图像都使用 .carousel-item 类包装,并使用 .active 类指定第一个图像应该被显示。
我们还可以使用 .carousel-indicators 类来创建轮播图指示器,这是一个小圆点列表,表示轮播图中有多少个图像。您还可以使用 .carousel-control-prev 和 .carousel-control-next 类来创建左右切换按钮。
除此之外,还可以通过调整 data-interval 属性来调整轮播图中图像的切换时间。例如,要将图像切换时间设置为 5 秒,可以将 data-ride 属性更改为 data-ride="carousel" data-interval="5000"。
<div
id="demo"
class="carousel carousel-fade"
data-bs-ride="carousel"
data-interval="5000"
></div>
还可以使用 .carousel-caption 类来在轮播图中的图像下方添加文本。可以使用以下代码在轮播图的每个图像下方添加标题和描述文本:
<div class="carousel-item active">
<img
decoding="async"
src="/static/images/l1.png"
class="d-block"
style="width:100%"
/>
<div class="carousel-caption">
<h3>Image 1</h3>
<p>Image 1 description</p>
</div>
</div>

📢📢📢📢📢📢
💗 你正在阅读 【梦想橡皮擦】 的博客
👍 阅读完毕,可以点点小手赞一下
🌻 发现错误,直接评论区中指正吧
📆 橡皮擦的第 800 篇原创博客
- 点赞
- 收藏
- 关注作者
评论(0)