当前位置: 首页 > java >正文

【Bootstrap V4系列】学习入门教程之 组件-导航条(Navbar)

Bootstrap V4系列 学习入门教程之 组件-导航条(Navbar)

  • 导航条(Navbar)
    • 一、How it works
    • 二、Supported content 支持的内容
      • 2.1 Brand 品牌
      • 2.2 Nav 导航
      • 2.3 Forms 表格
    • 三、Color schemes 配色方案
    • 四、Containers 容器
    • 五、Placement 放置方式
    • 六、Responsive behaviors 响应式行为

导航条(Navbar)

Bootstrap功能强大、响应迅速的导航头navbar的文档和示例。包括对品牌、导航、折叠插件等的支持。

一、How it works

在开始使用导航栏之前,您需要了解以下内容:

  • 导航栏需要一个带有.navbar-expand{-sm|-md|-lg|-xl}.navbar包装,用于响应式折叠和配色方案类。
  • 默认情况下,导航栏及其内容是流畅的。使用可选容器来限制其水平宽度。
  • 使用我们的间距和flex实用程序类来控制导航栏中的间距和对齐。
  • 默认情况下,导航栏是响应式的,但您可以轻松修改它们以更改这一点。响应行为取决于我们的Collapse JavaScript插件。
  • 默认情况下,打印时导航栏隐藏。通过在.navbar中添加.d-print来强制打印它们。请参见显示实用程序类。
  • 使用<nav>元素确保可访问性,或者,如果使用更通用的元素,如<div>,则在每个导航栏中添加role=“navigation”,以明确地将其标识为辅助技术用户的地标区域。

二、Supported content 支持的内容

导航栏内置了对少数子组件的支持。根据需要从以下选项中选择:

  • .navbar-brand 品牌代表您的公司、产品或项目名称。
  • .navbar-nav 导航用于全高和轻量级导航(包括支持下拉)。
  • .navbar-toggler 切换器,用于我们的折叠插件和其他导航切换行为。
  • .form-inline 内联用于任何表单控件和操作。
  • .navbar-text 文本,用于添加垂直居中的文本字符串。
  • .collapse.navbar-collapse用于按父断点对导航栏内容进行分组和隐藏。

这是一个包含在响应式灯光主题导航栏中的所有子组件的示例,该导航栏在lg(large)断点处自动折叠。

<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><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-expanded="false">Dropdown</a><div class="dropdown-menu"><a class="dropdown-item" href="#">Action</a><a class="dropdown-item" href="#">Another action</a><div class="dropdown-divider"></div><a class="dropdown-item" href="#">Something else here</a></div></li><li class="nav-item"><a class="nav-link disabled">Disabled</a></li></ul><form class="form-inline my-2 my-lg-0"><input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search"><button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button></form></div>
</nav>

页面展示效果:

在这里插入图片描述

2.1 Brand 品牌

.navbar-brand 品牌可以应用于大多数元素,但锚点效果最好,因为一些元素可能需要实用类或自定义样式。

<!-- As a link -->
<nav class="navbar navbar-light bg-light"><a class="navbar-brand" href="#">Navbar</a>
</nav><!-- As a heading -->
<nav class="navbar navbar-light bg-light"><span class="navbar-brand mb-0 h1">Navbar</span>
</nav>

页面展示效果:

在这里插入图片描述

<!-- Image and text -->
<nav class="navbar navbar-light bg-light"><a class="navbar-brand" href="#"><img src="/docs/4.6/assets/brand/bootstrap-solid.svg" width="30" height="30" class="d-inline-block align-top" alt="">Bootstrap</a>
</nav>

页面展示效果:

在这里插入图片描述

2.2 Nav 导航

导航栏导航链接基于我们的.nav选项,具有自己的修饰符类,需要使用切换类来实现适当的响应样式。导航栏中的导航也将增长到占用尽可能多的水平空间,以保持导航栏内容的安全对齐。

活动状态(带有.Active)表示当前页面可以直接应用于.nav-links 链接或其直接父级.nav-items项目。

<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="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button><div class="collapse navbar-collapse" id="navbarNav"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a></li><li class="nav-item"><a class="nav-link" href="#">Features</a></li><li class="nav-item"><a class="nav-link" href="#">Pricing</a></li><li class="nav-item"><a class="nav-link disabled">Disabled</a></li></ul></div>
</nav>

页面展示效果:

在这里插入图片描述

由于我们使用类进行导航,如果你愿意,你可以完全避免基于列表的方法。

<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="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button><div class="collapse navbar-collapse" id="navbarNavAltMarkup"><div class="navbar-nav"><a class="nav-link active" href="#">Home <span class="sr-only">(current)</span></a><a class="nav-link" href="#">Features</a><a class="nav-link" href="#">Pricing</a><a class="nav-link disabled">Disabled</a></div></div>
</nav>

页面展示效果:

在这里插入图片描述

您还可以在导航栏中使用下拉菜单。下拉菜单需要一个包装元素来定位,因此请确保为.nav-item 项目和.nav-link 链接使用单独的嵌套元素,如下所示。

<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="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button><div class="collapse navbar-collapse" id="navbarNavDropdown"><ul class="navbar-nav"><li class="nav-item active"><a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a></li><li class="nav-item"><a class="nav-link" href="#">Features</a></li><li class="nav-item"><a class="nav-link" href="#">Pricing</a></li><li class="nav-item dropdown"><a class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-expanded="false">Dropdown link</a><div class="dropdown-menu"><a class="dropdown-item" href="#">Action</a><a class="dropdown-item" href="#">Another action</a><a class="dropdown-item" href="#">Something else here</a></div></li></ul></div>
</nav>

页面展示效果:

在这里插入图片描述

2.3 Forms 表格

将各种窗体控件和组件放置在带有.form-inline内联的导航栏中。

<nav class="navbar navbar-light bg-light"><form class="form-inline"><input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search"><button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button></form>
</nav>

页面展示效果:

在这里插入图片描述

.navbar的直接子元素使用灵活布局,并将默认为justify-content: space-between。根据需要使用其他flex实用程序来调整此行为。

<nav class="navbar navbar-light bg-light"><a class="navbar-brand">Navbar</a><form class="form-inline"><input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search"><button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button></form>
</nav>

页面展示效果:

在这里插入图片描述

输入组也起作用:

<nav class="navbar navbar-light bg-light"><form class="form-inline"><div class="input-group"><div class="input-group-prepend"><span class="input-group-text" id="basic-addon1">@</span></div><input type="text" class="form-control" placeholder="Username" aria-label="Username" aria-describedby="basic-addon1"></div></form>
</nav>

页面展示效果:

在这里插入图片描述

三、Color schemes 配色方案

由于主题类和背景颜色实用程序的结合,导航栏的主题化从未如此简单。从.navbar-light中选择用于浅色背景的颜色,或.navbar-dark用于深色背景的颜色。然后,使用.bg-*实用程序进行自定义。

<nav class="navbar navbar-dark bg-dark"><!-- Navbar content -->
</nav><nav class="navbar navbar-dark bg-primary"><!-- Navbar content -->
</nav><nav class="navbar navbar-light" style="background-color: #e3f2fd;"><!-- Navbar content -->
</nav>

页面展示效果:

在这里插入图片描述

四、Containers 容器

虽然这不是必需的,但您可以将导航栏包裹在.container中,使其位于页面的中心。或者,您可以在.navbar中添加一个容器,仅将固定或静态顶部导航栏的内容居中。

<div class="container bg-primary"><nav class="navbar navbar-expand-lg navbar-light bg-secondary"><a class="navbar-brand" href="#">Navbar</a></nav>
</div>

页面展示效果:

在这里插入图片描述

<nav class="navbar navbar-expand-lg navbar-light bg-secondary"><div class="container bg-primary"><a class="navbar-brand" href="#">Navbar</a></div>
</nav>

页面展示效果:

在这里插入图片描述

五、Placement 放置方式

使用我们的位置实用程序将导航栏放置在非静态位置。从固定到顶部、固定到底部或粘贴到顶部(随页面滚动直到到达顶部,然后保持在那里)中进行选择。固定导航栏使用position:Fixed,这意味着它们是从DOM的正常流中提取的,可能需要自定义CSS(例如,在上填充顶部)来防止与其他元素重叠。

另请注意,.tick-top使用position:sticky,并非每个浏览器都完全支持它。

<nav class="navbar navbar-light bg-light"><a class="navbar-brand" href="#">Default</a>
</nav>

默认的,页面展示效果:

在这里插入图片描述

<nav class="navbar fixed-top navbar-light bg-light"><a class="navbar-brand" href="#">Fixed top</a>
</nav>

固定到顶部,页面展示效果:

在这里插入图片描述

<nav class="navbar fixed-bottom navbar-light bg-light"><a class="navbar-brand" href="#">Fixed bottom</a>
</nav>

固定到底部,页面展示效果:

在这里插入图片描述

<nav class="navbar sticky-top navbar-light bg-light"><a class="navbar-brand" href="#">Sticky top</a>
</nav>

粘贴到顶部,页面展示效果:

在这里插入图片描述

六、Responsive behaviors 响应式行为

默认情况下,导航栏开关是左对齐的,但如果它们跟在像.navbar-brand这样的兄弟元素后面,它们将自动对齐到最右侧。反转标记将反转触发器的位置。以下是不同切换样式的示例。

最小断点处未显示.navbar-brand

<nav class="navbar navbar-expand-lg navbar-light bg-light"><button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo01" aria-controls="navbarTogglerDemo01" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button><div class="collapse navbar-collapse" id="navbarTogglerDemo01"><a class="navbar-brand" href="#">Hidden brand</a><ul class="navbar-nav mr-auto mt-2 mt-lg-0"><li class="nav-item active"><a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled">Disabled</a></li></ul><form class="form-inline my-2 my-lg-0"><input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search"><button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button></form></div>
</nav>

页面展示效果:

在这里插入图片描述

随着浏览器窗口变化,页面展示效果:

在这里插入图片描述

左侧显示品牌名称,右侧显示开关:

<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="#navbarTogglerDemo02" aria-controls="navbarTogglerDemo02" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button><div class="collapse navbar-collapse" id="navbarTogglerDemo02"><ul class="navbar-nav mr-auto mt-2 mt-lg-0"><li class="nav-item active"><a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a></li><li class="nav-item"><a class="nav-link" href="#">Link</a></li><li class="nav-item"><a class="nav-link disabled">Disabled</a></li></ul><form class="form-inline my-2 my-lg-0"><input class="form-control mr-sm-2" type="search" placeholder="Search"><button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button></form></div>
</nav>

页面展示效果:

在这里插入图片描述
随着浏览器窗口变化,页面展示效果:

在这里插入图片描述

http://www.xdnf.cn/news/6175.html

相关文章:

  • MQTT详细介绍
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】附录-A. PostgreSQL常用函数速查表
  • 基于EFISH-SCB-RK3576/SAIL-RK3576的智能快递分拣机技术方案‌
  • 时序数据库IoTDB分布式系统监控基础概述
  • 小白成长之路-文件和目录内容检索处理(二)
  • 【C++重载操作符与转换】纯虚函数
  • 尚硅谷阳哥JVM
  • 智能工具协同赋能STEM教育科研|探索LLM大语言模型和数学软件Maple的创新实践
  • 2025年城市建设与交通运输国际会议(ICUCT 2025)
  • Baklib全场景知识中台驱动效能跃升
  • less中使用 @supports
  • 在C++中进行套接字编程时,主要使用以下头文件
  • CSS:选择器的优先级
  • 深入剖析某App视频详情逆向:聚焦sig3参数攻克
  • (10天冲刺版)软考:软件设计师 真题资料分享
  • Java高频面试之并发编程-17
  • 高海拔和远距离的人员识别:面部、体型和步态的融合
  • spark的Standalone模式介绍
  • 最大公约数JAVA
  • CK-S654-PA60一拖四分体式半导体电子货架专用RFID读写器|读码器接线使用说明
  • <论文>(微软)避免推荐域外物品:基于LLM的受限生成式推荐
  • “天神之眼”计算平台的算力设计(预计500-1000 TOPS)
  • 认识Docker/安装Docker
  • C及C++的SOAP协议库
  • 相关行业发展趋势写一个爬虫程序
  • 力扣3337. 字符串转换后的长度 II随笔
  • 2024年全国青少年信息素养大赛-算法创意实践C++ 华中赛区(初赛)历年真题
  • HTML5 浮动(Float)详解
  • 上海OA系统哪家好?厂商有哪些?
  • 如何在终端/命令行中把PDF的每一页转换成图片(PNG)