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全栈开发工程师的招聘启事,觉得这是我看过最有创意也最朴实的一个招聘启事,更为重要的是它更像是一个技术提纲,能够指引我们的学习和提升,现在转载过来与各位 ...
随机推荐
- Netty-ProtobufVarint32
效果 ProtobufVarint32LengthFieldPrepender编码器用于在数据最前面添加Varint32,表示数据长度 ProtobufVarint32FrameDecoder是相对应 ...
- 使用OnPush和immutable.js来提升angular的性能
angular里面变化检测是非常频繁的发生的,如果你像下面这样写代码 <div> {{hello()}} </div> 则每次变化检测都会执行hello函数,如果hello函数 ...
- 清北学堂 2020 国庆J2考前综合强化 Day7
目录 1. 题目 T1 魔力石 题目描述 Sol T2 和 题目描述 Sol T3 数对 题目描述 Sol T4 海豹王国 题目描述 Sol 考场策略 1. 题目 T1 魔力石 题目描述 题目描述 小 ...
- DolphinScheduler 集群高可用测试:有效分摊服务器压力,达到性能最大优化!
点击上方 蓝字关注我们 1 文档编写目的 Apache DolphinScheduler(简称DS)是一个分布式去中心化,易扩展的可视化DAG工作流任务调度平台.在生产环境中需要确保调度平台的稳定可靠 ...
- Luogu3177 [HAOI2015]树上染色 (树形DP)
考场上打出来个\(2^n n^2 \log (n)\),还文件错误RE了... 其实这不就是个变了一点点的树形背包,状态是节点\(u\)子树的\(贡献\). //#include <iostre ...
- 谈谈你对Promise的理解
一.Promise是什么? 理解 抽象表达: Promise 是一门新的技术(ES6 规范) Promise 是 JS 中进行异步编程的新解决方案(备注:旧方案是单纯使用回调函数) 具体表达: 从语法 ...
- Flutter 实战(一):列表项内容可自定义的列表组件
前言 本篇文的目的是熟练掌握 Flutter 组件的封装,并且使用回调函数实现主要功能. 本组件的设计灵感来源于 Element 组件库的 table 组件. 正题 定义回调函数 在此之前,必须要了解 ...
- YC-Framework版本更新:V1.0.9
分布式微服务框架:YC-Framework版本更新V1.0.9!!! 本文主要内容: 1.V1.0.9版本更新主要内容 2.YC-Framework新的征程 一.V1.0.9版本更新主要内容 (1)接 ...
- ASP.NET CORE在docker中的健康检查(healthcheck)
在使用docker-compose的过程中,很多程序都提供了健康检查(healthcheck)的方法,通过健康检查,应用程序能够在确保其依赖的程序都已经启动的前提下启动,减少各种错误的发生,同时,合理 ...
- React报错之Invalid hook call
正文从这开始~ 总览 导致"Invalid hook call. Hooks can only be called inside the body of a function compone ...
