PHP全栈开发(八):CSS Ⅹ 导航栏制作
学习了这么久的CSS,我们现在也可以小试牛刀一下了,我们使用我们学会的CSS知识来制作一个导航栏。
我们都知道,在现代的导航栏里面,最普遍的就是使用无序列表来制作导航栏。
我们可以使用如下代码来制作一个横向的导航栏
<ul>
<li><a href="#home">主页</a></li>
<li><a href="#news">通知</a></li>
<li><a href="#things">订单</a></li>
<li><a href="#contact">联系方式</a></li>
<li><a href="#gen">个人</a></li>
<li><a href="#about">关于</a></li>
</ul>
这就是一个典型的用UL制作的导航栏了。这个原装的货色就是这样子的。
然后现在我们使用CSS来给导航栏加上样式。
看会变成什么样子。我们首先去掉它的列表样式,然后把内外边距全部设置为0.
ul {
list-style-type: none;
margin: 0;
padding: 0;
}

这样一来它就会贴紧浏览器的边缘。并去掉了列表的标志。
上面的例子中的CSS代码是垂直和水平导航栏使用的标准代码。
为了让列表和周围的样式区别开来,我们给列表加上背景颜色,并设定宽度。
ul{
list-style-type: none;
margin: 0;
padding: 0;
width: 200px;
background-color: #f1f1f1;
}

设置完成之后这个导航栏的效果是这样的。
但是我们感觉这个链接之间还是太挤了。给链接加一些高度间隙。
在增加间距的时候我们首先要做的是就是把<a>变成一个块元素,不然是不能给内联元素增加内外边距的。
所以我们使用以下代码来给链接增加边距。
ul{
list-style-type: none;
margin: 0;
padding: 0;
width:200px;
background-color: #f1f1f1;
}
li a{
display:block;
padding:8px 8px;
text-decoration: none;
}
li a:hover {
background-color: #555;
color: white;
}

这样一个简单的垂直导航栏就做完了。
如果需要做一个横向的导航栏,只需要把li的float属性设置为left即可。
我们看一个横向导航栏的例子:
ul{
list-style-type:none;
margin:0;
padding:0;
background-color: #333;
overflow: hidden;
}
li {
float: left;
}
li a{
display:block;
text-decoration: none;
color:white;
padding:14px 16px;
}
li a:hover {
background-color: #111;
}

这里使用float:left来实现了display:inline;同样的效果,但值得注意的是。
在使用float:left;来进行横向显示的时候,必须要设置overflow: hidden;
PHP全栈开发(八):CSS Ⅹ 导航栏制作的更多相关文章
- Python全栈开发:css引入方式
css的四种引入方式: 1.行内式 行内式是在标记的style属性中设定CSS样式.这种方式没有体现出CSS的优势,不推荐使用. <p style="color: red;backgr ...
- Python 全栈开发八 文件处理
一.基本流程 打开文件得到文件句柄 将文件句柄赋值给一个变量 通过文件句柄对文件进行操作 关闭文件 二.基本操作 1.文件句柄 f = open("a.txt",encoding= ...
- 老男孩Python高级全栈开发工程师三期完整无加密带课件(共104天)
点击了解更多Python课程>>> 老男孩Python高级全栈开发工程师三期完整无加密带课件(共104天) 课程大纲 1.这一期比之前的Python培新课程增加了很多干货:Linux ...
- 全栈开发工程师微信小程序-中(中)
全栈开发工程师微信小程序-中(中) 开放能力 open-data 用于展示微信开放的数据 type 开放数据类型 open-gid 当 type="groupName" 时生效, ...
- 全栈开发工程师微信小程序-中
全栈开发工程师微信小程序-中 多媒体及其他的组件 navigator 页面链接 target 在哪个目标上发生跳转,默认当前小程序,可选值self/miniProgram url 当前小程序内的跳转链 ...
- 全栈开发工程师微信小程序-上(中)
全栈开发工程师微信小程序-上(中) width: 750rpx; 750rpx代表与屏幕等宽,rpx的缩写responsive pixel,这个单位是可以根据屏幕大小进行自适应调整的像素单位. 小程序 ...
- 转-subl配置全栈开发环境
为 Sublime Text 3 设置 Python 的全栈开发环境 Sublime Text 3 (ST3) 是一个轻量级的跨平台文字编辑器,尤以其轻快的速度,易用性和强大的社区支持而著称.它一经面 ...
- Python 全栈开发【第0篇】:目录
Python 全栈开发[第0篇]:目录 第一阶段:Python 开发入门 Python 全栈开发[第一篇]:计算机原理&Linux系统入门 Python 全栈开发[第二篇]:Python基 ...
- .NET全栈开发工程师学习路径
PS:最近一直反复地看博客园以前发布的一条.NET全栈开发工程师的招聘启事,觉得这是我看过最有创意也最朴实的一个招聘启事,更为重要的是它更像是一个技术提纲,能够指引我们的学习和提升,现在转载过来与各位 ...
随机推荐
- Druid 查询超时配置的探究 → DataSource 和 JdbcTemplate 的 queryTimeout 到底谁生效?
开心一刻 昨晚跟我妈语音 妈:我年纪有点大了,想抱孩子了 我:妈,我都多大了,你还想抱我? 妈:我想抱小孩,谁乐意抱你呀! 我:刚好小区有人想找月嫂,要不我帮你联系下? 妈:你给我滚 然后她直接把语音 ...
- InvalidClassException异常_原理和解决方案和练习_序列化集合
InvalidClassException异常_原理和解决方案 当JVM反序列化对象的时候,能找到class文件,但是class文件在序列化对象之后发生了修改,那么反序列化操作也会失败,抛出一个Inv ...
- SQL语言的总结
SQL语言分类:1.数据查询语言(DQL:Data Query Language),也称为"数据检索语句",用以从表中查询获得数据,常用关键字SELECT (一般常用的语句是:SE ...
- python 异常捕捉与异常处理
简介 在实际开发中,为了防止异常界面直接被用户看到,往往我们会采用捕捉异常的方式来进一步处理异常. 异常捕捉 如下代码由于下标越界会导致异常 data = range(10) print(data[1 ...
- Docker Compose之容器编排开发初探
1.前言 Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速在集群中部署分布式应用. Compose 是一个用于定义和运行多个 Docker 应用 ...
- HCIA-Datacom 3.2 实验二:生成树基础实验
实验介绍 以太网交换网络中为了进行链路备份,提高网络可靠性,通常会使用冗余链路.但是使用冗余链路会在交换网络上产生环路,引发广播风暴以及MAC地址表不稳定等故障现象,从而导致用户通信质量较差,甚至通信 ...
- Nodemon 如何实时监听 TypeScript 项目下的文件并热部署?
首先你的项目要安装ts-node和nodemon: npm i -D ts-node nodemon 在package.json文件中配置运行脚本: "dev": "no ...
- [CSharpTips]C#读取SQLite数据库中文乱码
C#读取SQLite数据库中文乱码 C#在读取C++写入数据的Sqlite数据库中的Text内容时,会出现乱码,因为C++默认编码格式为GB2312,而Sqlite编码格式为UTF-8,存入时不统一就 ...
- Word修订内容批量标红
最近改文章,期刊要求提供所有修改内容都标红的修订稿,本着能不手改就不手改的原则,我尝试检索了一下自动修改的方法,最先找到的是简书上的一篇使用VB宏命令批量修改的文章 (Word-接受全部修订为标红字体 ...
- PlayCover for mac-Mac 上全屏运行 iOS 应用程序
前言 如何在Mac电脑运行ios应用呢?PlayCover for Mac一款彻底解放苹果电脑的iOS软件安装工具,无需付费,操作简单,可以安装ipa文件,可以通过鼠标.键盘和控制器 在Mac上全屏运 ...
