我们先说一下伪类选择器的写法:
写法:选择器名称:伪类状态{}4
常见伪类状态:
未访问:link
鼠标移上去:hover
激活选定:active
已访问:visited
获得焦点的时候触发:focus

现在我们要用的是hover事件,也就是鼠标指上发生的事情。

例:
a:hover{

color:red

}<!--指上去a标签里的文字变红-->

还有要用到的是浮动属性,

例:

<div>

  float:left;

</div>  <!--使此div块向左浮动-->

 

可以使一个块级元素向左/向右浮动。原本块级元素占一整行,浮动之后可以使空余位置释放出来

以我学校的官网首页导航栏为例,来看一看怎样做一个导航栏:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>烟台大学</title>
<link rel="icon" href="img/ytu.png"/>
<style type="text/css">
*{
padding: 0px;
margin: 0px;
font-family: "微软雅黑";
}
.div
{
width: 1013px;
background-color: ;
height:107px ;
margin: 0 auto;
}
.div1{
float: left;
width: 317px;
height: 107px;
background-image: url("img/logo.jpg"); }
.div2{
float: right;
width: 696px;
height: 107px;
background-color:#032F54;
}
.div3{ height: 72px;
width: 701px;
}
li{
list-style: none;
background-color: #8C1616;
float: left;
width: 87px;
height: 35px;
font-size: 16px;
line-height: 35px;
color: white;
text-align: center;
}
      .li1{
background-color:#032F54;
visibility: hidden; }
         li:hover{
background-color: #032F54;
cursor: pointer;
}
li:hover .li1{
visibility: visible;
} .c{
background-color:#032F54;
font-size: 13px;
text-align: center; }
.c:hover{
background-color: #8C1616;
}
a{
text-decoration: none;
color: white;
}
</style> </head>
<body>
<div class="div">
<div class="div1"> </div>
<div class="div2">
<div class="div3"> </div>
<ul style="color: #8C1616;">
<li><a href="biaoge.html">烟大新闻</a></li>
<li>
<a href="biaoge.html">学校概况</a>
<ul class="li1">
<li class="c">学校简介</li>
<li class="c">现任领导</li>
<li class="c">校园风景</li>
</ul>
</li>
<li>学院设置</li>
<li>
人才培养
<ul class="li1">
<li class="c">本科生教育</li>
<li class="c">留学生教育</li>
<li class="c">研究生教育</li>
</ul>
</li>
<li>
科学研究
<ul class="li1">
<li class="c">服务地方网</li>
<li class="c">烟大学报</li>
<li class="c">研究生处</li>
</ul>
</li>
<li>学生工作</li>
<li>招生就业</li>
<li>公共服务</li> </ul>
</div>
</div> </body>
</html>

效果图如下:

OK!做好喽

如何做一个导航栏————浮动跟伪类(hover)事件的应用的更多相关文章

  1. 使用TabLayout快速实现一个导航栏

    在没有Material Design的年代,要实现一个类似微信主页面的效果,我们有以下几种解决方案: 1.Fragment + ViewPager  +  RadioGroup自定义固定导航条 2.F ...

  2. 【javascript/css】关于鼠标事件onmousexxx和css伪类hover

    在运用鼠标移入移出事件时,一般有两种做法,一种是DOM事件的"onmouseover"和"onmouseout",还有一种是css的伪类":hover ...

  3. 关于css伪类:hover的用法

    关于伪类:hover大家都用过,也比较熟悉.今天介绍一种新的用法(不是我发现的,但是以前一直没这么用过).在Chrome浏览器下,当a标签使用display:black;时a:hover的属性浏览器就 ...

  4. css3中做3D导航栏

    看别人做的一个3D导航栏,觉得很厉害,这里先保存下来,后面有时间好好分析一下: <!doctype html> <html lang="en"> <h ...

  5. html表单——使用frameset写一个导航栏效果

    主页面: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4 ...

  6. 用一个例子学习CSS的伪类元素

    CSS伪类元素是一个非常酷的东西!首先我们理解一下它,:before :after 伪类元素,也就是虚假的元素.它可以插入在元素的前面或者后面,而在HTML文档结构中,它却是不存在的,因为Js是无法通 ...

  7. CSS3学习笔记——伪类hover

    最近看到一篇文章:“Transition.Transform和Animation使用简介及应用展示”    ,想看看里面 “不同缓动类效果demo”例子的效果,发现了一个问题如下: .Trans_Bo ...

  8. 使用『jQuery』『原生js』制作一个导航栏动效 —— { }

    效果 HTML部分 <body> <nav> <div id="nav1">导航1</div> <div id="n ...

  9. jquery-仿flash的一个导航栏特效

    演示地址:http://itxiaoming.sinaapp.com/demo05/demo.html <html> <head> <meta http-equiv=&q ...

随机推荐

  1. 使用git部署服务器

    每回上传服务器是把我的web项目打包成war上传到服务器根目录下,总是觉得很麻烦,并且每次就算只添加或修改了一个文件,都要把整个服务器war包上传.于是我学着用git部署我的web项目 下面是详情: ...

  2. 10分钟精通SharePoint - SharePoint升级

    类型: b2b(安装更新)和v2v(跨版本升级) 内容:二进制文件和数据库 过程:   升级前检查 - 检查场内数据,配置和自定义等等 升级准备和计划 - 根据需要和升级检查制定相应计划和准备工作   ...

  3. 2017Java技术预备作业1501黄学超

    阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 我觉得师生关系应当是亲密无间,课上老师讲解学生配合,课下师生交流启发思考. 你有什么技能(学习,棋类,球类,乐器,艺术,游戏,......)比大多 ...

  4. java 文件操作(二)---Files和Path

    自从java 7以来,引入了FIles类和Path接口.他们两封装了用户对文件的所有可能的操作,相比于java 1的File类来说,使用起来方便很多.但是其实一些本质的操作还是很类似的.主要需要知道的 ...

  5. Linux块设备IO子系统(二) _页高速缓存

    磁盘驱动就是实现磁盘空间和内存空间数据上的交互,在上一篇中我们讨论了内存端的Page Segment Block Sector相关的概念,本文以3.14内核为例,讨论这部分内存是如何被组织管理的.我们 ...

  6. Java程序中与MongoDB建立连接~小记

    1.Mongo和MongoClient的关系 MongoClient继承自Mongo,使用Mongo也可建立连接,但是需要使用与Mongo适应的MongoOptions,MongoURI等类型. 2. ...

  7. MyBatis框架原理(三)

    一.框架结构原理图 二.MyBatis框架执行流程 三.总结 原理详解: MyBatis应用程序根据XML配置文件创建SqlSessionFactory,SqlSessionFactory在根据配置, ...

  8. 利用select实现伪并发的socket

    使用socket模块可以实现程序之间的通信,但是server在同一时刻只能和一个客户端进行通信,如果要实现一个server端可以和多个客户端进行通信可以使用 1.多线程 2.多进程 3.select ...

  9. Webpack 速成

    前言 如果你已经对Webpack精通了或者至少一直在工作中使用它,请关闭当前浏览器标签,无视这篇文章. 这篇文章本意是写给我自己看的,作为一篇Cookbook供快速查询和上手用.原因是虽然工作中会涉及 ...

  10. formvalidation表单验证

    官方文档:http://formvalidation.io var $formEntityProfileSearch = $("form[name=entityProfileSearch]& ...