学习了这么久的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 Ⅹ 导航栏制作的更多相关文章

  1. Python全栈开发:css引入方式

    css的四种引入方式: 1.行内式 行内式是在标记的style属性中设定CSS样式.这种方式没有体现出CSS的优势,不推荐使用. <p style="color: red;backgr ...

  2. Python 全栈开发八 文件处理

    一.基本流程 打开文件得到文件句柄 将文件句柄赋值给一个变量 通过文件句柄对文件进行操作 关闭文件 二.基本操作 1.文件句柄 f = open("a.txt",encoding= ...

  3. 老男孩Python高级全栈开发工程师三期完整无加密带课件(共104天)

    点击了解更多Python课程>>> 老男孩Python高级全栈开发工程师三期完整无加密带课件(共104天) 课程大纲 1.这一期比之前的Python培新课程增加了很多干货:Linux ...

  4. 全栈开发工程师微信小程序-中(中)

    全栈开发工程师微信小程序-中(中) 开放能力 open-data 用于展示微信开放的数据 type 开放数据类型 open-gid 当 type="groupName" 时生效, ...

  5. 全栈开发工程师微信小程序-中

    全栈开发工程师微信小程序-中 多媒体及其他的组件 navigator 页面链接 target 在哪个目标上发生跳转,默认当前小程序,可选值self/miniProgram url 当前小程序内的跳转链 ...

  6. 全栈开发工程师微信小程序-上(中)

    全栈开发工程师微信小程序-上(中) width: 750rpx; 750rpx代表与屏幕等宽,rpx的缩写responsive pixel,这个单位是可以根据屏幕大小进行自适应调整的像素单位. 小程序 ...

  7. 转-subl配置全栈开发环境

    为 Sublime Text 3 设置 Python 的全栈开发环境 Sublime Text 3 (ST3) 是一个轻量级的跨平台文字编辑器,尤以其轻快的速度,易用性和强大的社区支持而著称.它一经面 ...

  8. Python 全栈开发【第0篇】:目录

    Python 全栈开发[第0篇]:目录   第一阶段:Python 开发入门 Python 全栈开发[第一篇]:计算机原理&Linux系统入门 Python 全栈开发[第二篇]:Python基 ...

  9. .NET全栈开发工程师学习路径

    PS:最近一直反复地看博客园以前发布的一条.NET全栈开发工程师的招聘启事,觉得这是我看过最有创意也最朴实的一个招聘启事,更为重要的是它更像是一个技术提纲,能够指引我们的学习和提升,现在转载过来与各位 ...

随机推荐

  1. Druid 查询超时配置的探究 → DataSource 和 JdbcTemplate 的 queryTimeout 到底谁生效?

    开心一刻 昨晚跟我妈语音 妈:我年纪有点大了,想抱孩子了 我:妈,我都多大了,你还想抱我? 妈:我想抱小孩,谁乐意抱你呀! 我:刚好小区有人想找月嫂,要不我帮你联系下? 妈:你给我滚 然后她直接把语音 ...

  2. 匿名对象和private关键字

    匿名内部类 没有名次的对象我们成为匿名对象 new Dog(); new Demo02().change(new Student("...")); 匿名对象的特点 如果对象只会被使 ...

  3. [NCTF2019]SQLi-1||SQL注入

    1.打开之后首先尝试万能密码登录和部分关键词(or.select.=.or.table.#.-等等)登录,显示被检测到了攻击行为并进行了拦截,结果如下: 2.使用dirmap进行目录扫描,发现robo ...

  4. 羽夏看Linux内核——门相关入门知识

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.如有好的建议,欢迎反馈.码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作.如想转载,请把我的转载信息附在文章后面,并 ...

  5. DS队列----银行单队列多窗口模拟

    题目描述 假设银行有K个窗口提供服务,窗口前设一条黄线,所有顾客按到达时间在黄线后排成一条长龙.当有窗口空闲时,下一位顾客即去该窗口处理事务.当有多个窗口可选择时,假设顾客总是选择编号最小的窗口. 本 ...

  6. 慢SQL,压垮团队的最后一根稻草!

    一.什么是慢 SQL 什么是慢SQL?顾名思义,运行时间较长的 SQL 语句即为慢 SQL! 那问题来了,多久才算慢呢? 这个慢其实是一个相对值,不同的业务场景下,标准要求是不一样的. 我们都知道,我 ...

  7. Atcoder Beginner Contest 200 E. Minflip Summation(概率数论)

    题面 一个字符串 T T T 是由一个包含 0.1.? 的字符串 S S S 循环连接 K K K 次获得的. 字符串 T T T 中的每个 ? 都可以换成 0 或 1 ,假设 T T T 中一共有 ...

  8. javaweb-thymeleaf,加载jar包---视图基础

    1.加载完thymeleaf的jar包 将thymeleaf的jar包复制到项目下lib文件夹中 右击lib文件夹,点击Add as librarb... 打开Project Structure,找到 ...

  9. ansible 002 连接被控端 inventory ansible.cfg ansible-adhoc ansible原理

    ssh用普通用户连接被控端 配置主机清单 (/etc/hosts域名解析为前提) [root@workstation ansible]# cat hosts servera serverb [root ...

  10. 在 C# CLR 中学习 C++ 之了解 extern

    一:背景 在 CLR 源码中有很多的 extern 和 extern "C" 这样的关键词,比如下面这些代码: extern size_t gc_global_mechanisms ...