Angular最新教程-第六节编写响应式导航栏

这节课我们讲解如何使用bootstrap 4 编写响应式布局。
参考图我们还是参照Angular中文社区http://www.angularjs.cn/
这里写图片描述
图中标注红色的部分,我自己不是很喜欢,所以做了一点小改动。
他这里也没有做响应式布局,所以样式就不抄他的,我们自己重写。
首先我们先简要的分析一下这个navbar。
整体是一个黑色的navbar。
参考代码:

<nav class="navbar navbar-dark bg-dark"><!-- Navbar content -->
</nav>

最左边是一个带有图片的标题。
参考代码:

<!-- Image and text -->
<nav class="navbar navbar-light bg-light"><a class="navbar-brand" href="#"><img src="/assets/brand/bootstrap-solid.svg" width="30" height="30" class="d-inline-block align-top" alt="">Bootstrap</a>
</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="#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">...</ul><ul class="navbar-nav my-2 my-lg-0">...</ul></div>
</nav>

把上面的代码组合起来就能实现响应式的导航栏了。
但是要使用bootstrap 我们要先下载它的文件,并在我们的项目中使用它。
这里我们不下载,我们使用cdn的方式,直接从网络上加载资源。
在src\index.html文件中,加入bootstrap的逻辑和样式文件

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous"><script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script><script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>

新建一个navbar组件。(方法同上节课)运行 ng generate component main-navbar
这里写图片描述
刷新项目,在src\app\main-navbar\main-navbar.component.html中编写。

<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<a class="navbar-brand" href="#"><img src="../../assets/logo.png" width="30" height="30" class="d-inline-block align-top" alt="">Angular中文社区</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="#">动态</a></li><li class="nav-item"><a class="nav-link" href="#">官方文档</a></li><li class="nav-item"><a class="nav-link " href="http://blog.csdn.net/onil_chen">CSDN</a></li></ul><ul class="navbar-nav my-2 my-lg-0"><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>

在src\app\app.component.html中使用main-navbar组件<app-main-navbar></app-main-navbar>
保存运行。(方法参见第三节在谷歌浏览器中调试Angularhttp://blog.csdn.net/onil_chen/article/details/77964095)
当屏幕较大时,效果如下。
这里写图片描述
当屏幕较小时,一般指手机页面。
这里写图片描述
点击右侧按钮,可以展开导航。
这里写图片描述

文中参考代码来自:https://getbootstrap.com/docs/4.0/components/navbar/
效果图来自:http://www.angularjs.cn/

源代码:百度云 链接:http://pan.baidu.com/s/1eRUMJVc 密码:dd99
码云:https://gitee.com/xiaohuOni/oniplan-ng
有码云的帮忙给个star,感谢。

这节课的内容就到这里完成了。
感谢您的阅读。
我是莽夫,希望你开心。
如果你觉得本文对你有帮助,请扫描文末二维码,支持博主原创。
希望大家关注我的个人公众号ionic_
这里写图片描述

转载于:https://www.cnblogs.com/xiaohuoni/p/7642251.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/354751.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机在智慧交通的应用论文,智能交通的毕业论文

智能交通的毕业论文智能运输系统的研究许多国家都投入了巨大的人力和物力,并成为继航空航天、军事领域之后高新技术应用最集中的领域。下面为大家分享了有关智能交通的论文&#xff0c;欢迎欣赏&#xff01;摘 要&#xff1a;八十年代以来&#xff0c;世界一些发达国家纷纷投入…

MySQL5.5安装教程

1、 官网下载mysql5.5 下载地址&#xff1a; http://dev.mysql.com/downloads/mysql/5.5.html#downloads 2、 安装mysql5.5 注意&#xff0c;安装之前&#xff0c;请关闭杀毒软件。 &#xff08;1&#xff09; 打开下载的mysql-5.5.53-winx64.msi &#xff08;2&#xff09; 点…

计算机上平方米的单位,word怎么写平方米 word中平方米的单位怎么打

1、以Word2010版本为例&#xff0c;在文档中输入了平方米的单位&#xff0c;但是数字2不在上方&#xff1b;2、首先选中数字2&#xff0c;然后点击页面上方的上标图标&#xff0c;如下图所示&#xff1b;3、点击上标图标后&#xff0c;就会发现数字2在字母的右上方了&#xff0…

SQL Server 索引重建手册

注意&#xff1a;索引重建前建议把数据库切换为完整模式&#xff0c;否则索引复制会在数据文件中进行&#xff0c;导致数据文件很大&#xff0c;而数据文件的收缩比日志文件的收缩要困难的多&#xff0c;且会对业务造成影响。步骤一:查询索引碎片&#xff0c;脚本如下&#xff…

apache camel_令人印象深刻的第一个Apache Camel版本

apache camel在准备下周的CamelOne会议时&#xff0c;我花了一些时间回顾一下Apache Camel项目的历史。 因此&#xff0c;除其他外&#xff0c;我了解了Apache Camel的第一个正式1.0版本 。 Apache Camel 1.0 – 5年前 我看的越多&#xff0c;这个版本的事实给我留下了深刻的印…

notion自建服务器,【速报】Notion的特色「双向链接」方案来了,Synced Block 登场...

Notion 作为一款出色的「聚合型」(All-In-One)笔记 App&#xff0c;在这几年里逐渐获得了不少知识工作者的宠爱。在以前&#xff0c;大家一般会高度赞扬 Notion 的「模块化」编辑器&#xff0c;但同时也会好奇什么时候 Notion 可以带来像Roam Research 那样的 「双向链接」功能…

本周Java技巧#7 – Maven慢吗?

本周Java本周技巧是有关Maven的上一期的后续内容。 第一个视频介绍了与Maven依赖关系有关的方面。 该视频将介绍一些加快Maven构建速度的技术。 Maven慢吗&#xff1f; 从Maven 3开始&#xff0c;您可以并行运行构建。 根据构建机器和项目结构的不同&#xff0c;您可能会获得6…

华北电力大学的计算机类专业排名,2018年华北电力大学王牌专业排行榜,考生和家长们都好好看看!...

华北电力大学有两个校区&#xff0c;一个是北京校区&#xff0c;一个是保定校区&#xff0c;在理科类的院校中&#xff0c;这所大学还是非常不错的&#xff0c;小编有幸去这个学校玩过几次&#xff0c;这个学校的占地面积非常大&#xff0c;环境相对比较优美&#xff0c;而且学…

算力云服务器是干啥的,云服务器将成趋势计算力和安全性是考验

云服务器是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。通常来说&#xff0c;平台的每个集群节点被部署在互联网的骨干数据中心&#xff0c;可以独立提供计算、存储、在线备份、托管、带宽等互联网基础设施服务。关注的是高性能吞吐量计算能力&#xff0c;关注的是…

ajax后台怎么取mapp,后台管理实现

京淘后台管理实现1.1 商品列表展现1.1.1 商品POJO对象1.1.2 表格数据页面结构1.1.3 请求URL地址说明&#xff1a;如果采用UI框架并且添加了分页插件&#xff0c;则会自动的形成如下的URL请求地址1.1.4 编辑ItemController1.1.5 编辑ItemService1.1.6 编辑ItemMapper手动编辑分页…

让工厂美丽

每个名副其实的Java程序员都知道Factory Pattern 。 这是一种便捷&#xff0c;标准化的方法&#xff0c;它通过教一个组件如何捕鱼而不是将它们交给它们来减少耦合。 但是&#xff0c;在使用大型系统时&#xff0c;该模式确实会向系统添加大量样板代码。 对于每个实体&#xff…

UVa10779 - Collectors Problem(最大流)

题目链接 简介&#xff1a;交换贴纸 分析&#xff1a; 这也算是一个天坑了 很久之前就看过这道题&#xff0c;但是一直没有填 美妙的建图&#xff1a; 我们用n-1个点表示每个除Bob之外的人 用m个点表示贴纸&#xff0c;从源点向这m个点连边&#xff0c;边的容量是Bob拥有该…

华为免费虚拟服务器,免费试用虚拟服务器

免费试用虚拟服务器 内容精选换一换本节操作介绍切换虚拟私有云的操作步骤。仅支持单网卡切换虚拟私有云。切换虚拟私有云会导致云服务器网络中断。切换虚拟私有云过程中&#xff0c;请勿操作云服务器的弹性公网IP&#xff0c;或对云服务器做其他操作。切换虚拟私有云后&#x…

带有JWT示例的​​Spring Oauth2

有时以前&#xff0c;我们发表了一篇文章&#xff0c;分享了一种在云环境中实现无状态会话的自定义方法。 今天&#xff0c;让我们探讨为Spring Boot应用程序设置Oauth2身份验证的另一个流行用例。 在此示例中&#xff0c;我们将使用JSON Web令牌&#xff08;JWT&#xff09;作…

Spring源码解析-实例化bean对象

spring加载配置文件&#xff0c;AbstractApplicationContext类中的refresh方法起着重要的作用。 Overridepublic void refresh() throws BeansException, IllegalStateException {synchronized (this.startupShutdownMonitor) {// Prepare this context for refreshing.准备刷新…

java docx文档解析_带有docx4j的Java Word(.docx)文档

java docx文档解析几个月前&#xff0c;我需要创建一个包含许多表和段落的动态Word文档。 过去&#xff0c;我曾使用POI来实现此目的&#xff0c;但是我发现它很难使用&#xff0c;并且在创建更复杂的文档时对我来说效果不佳。 因此&#xff0c;对于这个项目&#xff0c;经过一…

jit即时编译_热点中的即时编译器(JIT)

jit即时编译即时编译器&#xff08;JIT&#xff09;的概念以及更广泛的自适应优化是除Java&#xff08;.Net&#xff0c;Lua&#xff0c;JRuby&#xff09;之外的许多语言中众所周知的概念。 为了解释什么是JIT编译器&#xff0c;我想先定义一个编译器概念。 根据维基百科&…

每天十分钟系列:JS数据操作之神奇的map()

Array.prototype.map() map()方法可以创建一个新数组&#xff0c;其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。 demo1 上面的例子&#xff0c;在控制台中打印的结果是&#xff1a; 1 2 3 4 5 demo2 javascript学习交流群&#xff1a;453833554 上面的例子…

使用vue-axios请求geoJson数据报错的问题

最近的项目用到了echarts一个带有散点地图的图表,按照正常jquery写法应该使用ajax请求geojson的数据动态去切换地图,就像下面这样 $.get(Js/map/ cityData.name .json, function(geoJson) {map(gr-map, cityData, geoJson, geoCoordMap);//调用地图方法}); 页面显示(成功) bu…

前端工业物联网开发(Electron + Typescript + Vue)

从SpaceX公司的带来的Javascript上天新闻开始&#xff0c;以及近几年js语言在整个互联网的广泛应用&#xff0c;注定未来js语言有着不平凡的使命&#xff0c;跨端&#xff08;一套代码多端运行&#xff09;、易UI&#xff08;前端开发UI的便利&#xff09;、丰富的生态&#xf…