学习了这么久的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. 常用的函数式接口_Function接口练习_自定义函数模型拼接

    package com.yang.Test.FunctionStudy; import java.util.function.Function; /** * 练习:自定义函数模型拼接 * 题目: * ...

  2. PHP几个工具函数

    移除XSS攻击脚本 function RemoveXSS($val) { // remove all non-printable characters. CR(0a) and LF(0b) and T ...

  3. 强大博客搭建全过程(1)-hexo博客搭建保姆级教程

    1. 前言 本人本来使用国内的开源项目solo搭建了博客,但感觉1核CPU2G内存的服务器,还是稍微有点重,包括服务器内还搭建了数据库.如果自己开发然后搭建,耗费时间又比较多,于是乎开始寻找轻量型的博 ...

  4. 常见docker命令(二)-容器生命周期相关

    docker run 命令主要参数-d 后台运行,返回容器id-i 以交互模式运行,通常与-t连用-t 为容器重新分配一个伪输入终端,通常与-i连用-P(大写) 随机端口映射,容器内部端口随机映射到主 ...

  5. mybatis 13: 一对多关联查询

    业务背景 根据客户id查询客户基本信息,以及客户存在的订单信息 两张数据表 客户表 订单表 实体类 客户实体类:Customer private Integer id; private String ...

  6. 服务器部署 Vue 和 Django 项目的全记录

    本篇记录我在一个全新服务器上部署 Vue 和 Django 前后端项目的全过程,内容包括服务器初始配置.安装 Django 虚拟环境.python web 服务器 uWSGI 和反向代理 Nginx ...

  7. 计算机网络-DNS和HTTPDNS了解

    DNS 和 HTTPDNS DNS 域名解析的过程 传统 DNS 存在的问题 1.域名缓存问题 2.域名转发问题 3.出口 NAT 问题 4.DNS 域名更新问题 5.解析延迟问题 6.运营商劫持 H ...

  8. Semaphore-停车场

    模拟20辆车进停车场 停车场容纳总停车量5. 当一辆车进入停车场后,显示牌的剩余车位数响应的减1. 每有一辆车驶出停车场后,显示牌的剩余车位数响应的加1. 停车场剩余车位不足时,车辆只能在外面等待 p ...

  9. java代码审计的点

    java代码审计的点 组件的审计 首先看pom.xml查看第三方组件和第三方组件的版本 常用的第三方组件: 第三方组件 漏洞类型 组件漏洞版本 log4j2 远程代码执行 Apache log4j2 ...

  10. flutter系列之:UI layout简介

    目录 简介 flutter中layout的分类 常用layout举例 总结 简介 对于一个前端框架来说,除了各个组件之外,最重要的就是将这些组件进行连接的布局了.布局的英文名叫做layout,就是用来 ...