导航条-组件结构分析|学习笔记

简介: 快速学习 导航条-组件结构分析

开发者学堂课程【移动 Web 前端开发:导航条-组件结构分析】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/594/detail/8452


导航条-组件结构分析


具体内容

1、组建的名字叫 nav打开 bootstrep 文档点击组件,在最右边点击导航条。

image.png

2、导航条:

默认样式的导航条,导航条是在您的应用或网站中作为导航页头的响应式基础组件。

它们在移动设备上可以折叠(并且可开可关),且在视口(  viewport  )宽度增加时逐渐变为水平展开模式。两端对齐的导航条导航链接已经被弃用了。

(1)导航条内所包含元素溢出

由于 Bootstrap  并不知道在导航条内放置的元素需要占据多宽的空间,可能会遇到导航条中的内容折行的情况(也就是导航条占据两行)。

解决办法如下:

a.减少导航条内所有元素所占据的宽度。

b.在某些尺寸的屏幕上(利用响应式工具类)隐藏导航条内的一些元素。

c.修改导航条在水平排列和折叠排列互相转化时,触发这个转化的最小屏幕宽度值。

可以通过修改  @grid-float-breakpoint  变量实现,或者自己重写相关的媒体查询代码,覆盖 Bootstrap 的默认值。

(2)依赖 JavaScript 插件

如果 JavaScript 被禁用,并且视口( viewport  )足够窄,致使导航条折叠起来,导航条将不能被打开,.navbar-

Collapse 内所包含的内容也将不可见。

响应式导航条依赖 collapse 插件,定制 Bootstrap 的话时候必将其包含。

(3)修改视口的阈值从而影响导航条的排列模式

当浏览器视口( viewport  )的宽度小于 @grid-float-breakpoint  值时导航条内部的元素变为折叠排列,也就是变现为移动设备展现模式;当浏览器视口(  viewport  )的宽度大于 @grid- float -breakpoint  值时导航条内部的元素变为水平排列也就是变现为非移动设备展现模式。

通过调整源码中的这个值就可以控制导航条何时堆叠排列何时水平排列。默认值是 768px ( 小屏幕-或者说是平板--的最小值或者说是平板)。

(4)导航条的可访问性

务必使用 元素或者如果使用的是通用的

元素的话务必为导航条设置 role="navigation"  属性这样能够让使用辅助设备的用户明确知道这是一个导航区域。

3、这个导航条不需要考虑终端怎么显示什么样式bootstrap 已经做好是一个成品使用这个导航条可以分析一下它给的代码都是什么意思首先明白导航条的结构是什么 bootstrap 组件自定义成自己产品的组件

4、到 wjs 项目分析一下 bootstrap 导航条如果不进行分析在修改的时候一定会遇到很多问题注意要把模版导进来如果没有模版导航条不能生效必须要有环境把中间没用的删掉

模版代码如下

l>

l lang="zh-CN" >

<head>

container

再把 bootstrap 关于导航条的模版进行拷贝预览一下现在的导航条能不能看的到

对代码进行解析

<!--导航条 默认样式的导航条-->

<nav class="navbar navbar-default">  第一句是默认样式的导航

<!--响应式容器-->

="container-fluid" >单独的 container 是响应式容器container-fluid  就是流式容器这里使用的响应式容器删掉 -fluid

<!--商标区域  切换按钮在移动端才会完全显示-->

商标和切换按钮组合在移动端显示的更好brand 是商标或者logo的区域

导航的头部

<!--切换按钮-->

-navbar-collapse-1" aria-expanded="false" >button 就是切换按钮navbar 的切换按钮collapsed 可以在  bootstrap  里面找到它是  javascript 折叠的插件新建一个html file 

命名为  collapse 再右键 rename添加09,再点击 refactor单独提出来它是个组件钥匙用这个组件也需要 bootstrap 环境复制粘贴

输入<!--需求一个按钮能控制某一块区块的显示和隐藏-->

image.png

<button>  按钮<button>  连接可以控制按钮显示和隐藏也可以 div 也可以控制显示和隐藏

<!--data-toggle=collapse”  申明组件 折叠组件

data-target=选择器 设置目标控制元素 通过选择器

如果是  a  元素也可以通过  href  来设置目标控制元素 选择器

-->

当加了这个属性之后 bootstrap 有自己的  js  文件当页面加载完成bootstrap js  文件也要进行加载加载完成之后通过  js  去找data-toggle的属性拿到data-toggle 的值可以判断这个元素想初始化什么文件

 bootstrap  里面核心技术文件实现功能data-toggle=collapse”data-target=#box“>  按钮  先把 button 初始化一个可以点击的切换按钮的功能折叠组件控制目标元素是 id  box  的容器

<a href=".box"data-toggle=collapse”>连接</a>

<div class="btn"data-toggle=collapse”data-target= =#box”>divBtn</div>

<!--被控制的区域- ->

<div id=box”class=box”>

<p>内容</p>   加入内容

<p>内容</p>

<p>内容</p>

<p>内容</p>

<p>内容</p>

<p>内容</p>

<p>内容</p>

<p>内容</p>

<p>内容</p>

<p>内容</p>

点击链接效果

<a href="#">连接</a>

<div>k</div>

<data-toggle=collapse”申明折叠组件

data-target=#bs-example-navbar-collapse-1控制ID叫

一个div

屏幕阅读器辅助性的阅读设备 有一些盲人的用户也会去浏览网页它们会借助一些设备叫做屏幕阅读器这些设备根据网页内容分析到当前阅读到的区域是哪一块

aria-expanded=”false”可以剪切掉可有可无

aria- 都是给屏幕阅读器用的

span class="sr-only">Toggle navigation</span 这段也是可有可无

sr-only ==>> screen read only 屏幕阅读器告诉盲人用户做出一个按钮做出切换导航的按钮

Role=button屏幕阅读器作用是什么是什么的角色

-->

<button type= "button" class="navbar-toggle collapsed" data- toggle=" collapse“data-target=#bs-example-navbar-collapse-1>

data

<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=" #" >Brand</a>商标区域里面现在只是一个文字如果还想加更多的logo往a里面加就可以

</div> 

<!--可以切换的区域包含了 连接 表单和其他内容-->

<!-- Collect the nav links, forms, and other content for toggling -->集合了导航链接表单和其他的一些区域可以切换

<div class="collapse navbar-collapse" id="bs -example -navbar-collapse-1">

<ul class="nav navbar-nav" >

<li class="active"><a href="#">Link<span class="sr-only">(current)</span></a></li>  active当前被选中的Link导航连接sr-only当前的意思是可有可无 

<li><a href-"#">Link</a>/li>还是连接

<li class="dropdown">  形成了下拉组件data-toggle= " dropdown"声明下拉组件知道下拉菜单就可以不要它

<a href="#" class=" dropdown-toggle" data-toggle= " dropdown" role="button" aria -haspopup="true"aria- expanded="false" >Dropdown <span class="caret" ></span></a>

<ul class="dropdown- menu">

<li><a href=" #">Action</a>/li>

<li><a href-"#">Another action</a></li>

<li>a href="#">Something else here</a></li>

<li role-"separator" class-"divider">/li>

<li><a href-"#">Separated link</a></li>

<li role-"separator" class="divider">/li>

<li><a href="#">One more separated link</a></li>

</ul>

</li>

</ul>

这是一个 form 表单组不要也可以

<form class="navbar-form navbar-left" role="search">

<div class="form-group">

<input type="text" class="form-control" placeholder="Search" >

</div>

<button type-"submit" class-"btn btn-default">Submit</button>

</form>

<ul class="nav navbar-nav navbar-right">  它是右边的导航

<li><a href="#">Link</a></li>

<li class="dropdown">

<a href="#" class=" dropdown-toggle" data-toggle=" dropdown" role="button" aria -haspopup="true"

aria- expanded="false">Dropdown <span class="caret"></span></a>

<ul class-"dropdown - menu">

<li><a href-" #">Action</a></li>

<li>a href="#">Another action</a></li>

<li><a href="#">Something else here</a></li>

<li role="separator" class="divider">/li>

<li>a href="#">Separated link</a>/li>

</ul>

</li>

</ul>

</div>!-- /.navbar-collapse -->

</div>!-- /. container-fluid -->

</nav>

相关文章
|
IDE API 开发工具
FastAPI快速搭建一个博客系统
FastAPI快速搭建一个博客系统
1129 0
FastAPI快速搭建一个博客系统
|
XML 监控 Android开发
Android Studio App开发入门之文本输入EditText的讲解及使用(附源码 包括编辑框、焦点变更监听器、文本变化监听器 )
Android Studio App开发入门之文本输入EditText的讲解及使用(附源码 包括编辑框、焦点变更监听器、文本变化监听器 )
957 0
ly~
|
存储 安全 前端开发
php文件管理系统
PHP 文件管理系统是基于 PHP 开发的,用于管理文件和文件夹的应用。它支持文件上传、下载、浏览、搜索、编辑和删除,并提供权限管理和安全防护功能。适用于企业内部、网站和个人文件管理,确保文件的安全性、保密性和高效共享。
ly~
489 9
|
小程序 开发者
【微信小程序-原生开发】实用教程05-首页(含自定义调试模式、插入图片、图文排版、底部留白、添加本地图片)
【微信小程序-原生开发】实用教程05-首页(含自定义调试模式、插入图片、图文排版、底部留白、添加本地图片)
447 0
|
监控 架构师 安全
企业架构(EA)项目开发综合指南
企业架构(EA)是一种全面的方法,用于对齐企业的业务目标与其 IT 战略和资源。EA 涵盖了企业的各个层面,包括业务流程、信息流、应用系统和技术基础设施。本指南将详细探讨 EA 项目开发的关键步骤、[EA](https://www.visual-paradigm.com/features/enterprise-architecture-diagram-tool/) 与 TOGAF、ArchiMate 以及其他建模图(如 BPMN 和 UML)之间的关系,以及推荐 Visual Paradigm 作为 EA 团队的最佳解决方案。
724 3
|
弹性计算 人工智能 自然语言处理
云工开物:阿里云弹性计算走进高校第2期,与北京大学研一学生共探AI时代下的应用创新
阿里云高校合作、弹性计算团队​于北京大学,开展了第2届​【弹性计算进校园】​交流活动。
|
前端开发 Java 数据库连接
【Java笔记+踩坑】SpringBoot——基础
springboot三种配置文件及其优先级、多环境配置、springboot整合junit,mybatis、ssmp综合图书案例
【Java笔记+踩坑】SpringBoot——基础
|
网络安全 云计算
在哪找出来阿里云服务器代码
本文介绍了在阿里云上查找服务器代码的方法,包括通过控制台搜索实例并进入详情页查找相关信息,利用 `ssh` 和 `cat` 等命令行工具远程访问和查看文件,以及联系阿里云技术支持获得进一步帮助,助您轻松定位和操作服务器代码。
385 2
|
机器学习/深度学习 人工智能 算法
【服装识别系统】图像识别+Python+人工智能+深度学习+算法模型+TensorFlow
服装识别系统,本系统作为图像识别方面的一个典型应用,使用Python作为主要编程语言,并通过TensorFlow搭建ResNet50卷积神经算法网络模型,通过对18种不同的服装('黑色连衣裙', '黑色衬衫', '黑色鞋子', '黑色短裤', '蓝色连衣裙', '蓝色衬衫', '蓝色鞋子', '蓝色短裤', '棕色鞋子', '棕色短裤', '绿色衬衫', '绿色鞋子', '绿色短裤', '红色连衣裙', '红色鞋子', '白色连衣裙', '白色鞋子', '白色短裤')数据集进行训练,最后得到一个识别精度较高的H5格式模型文件,然后基于Django搭建Web网页端可视化操作界面,实现用户在界面中
834 1
【服装识别系统】图像识别+Python+人工智能+深度学习+算法模型+TensorFlow
|
监控 数据挖掘 数据安全/隐私保护
ERP系统中的财务合规与审计
【7月更文挑战第25天】 ERP系统中的财务合规与审计
1048 1

热门文章

最新文章