css制作导航栏的上下三角
1)先完成一个导航条
<style type="text/css">
.nav-ul{
list-style: none;
}
.nav-ul li{
width: 100px;
height: 40px;
border:1px solid #000;
float: left;
margin-right: 10px;
text-align: center;
line-height: 40px;
}
</style> <div class="nav">
<ul class="nav-ul">
<li>nav1</li>
<li>nav2</li>
<li>nav3</li>
</ul>
</div>
效果如下:

2)在每个导航的最右侧做一个 下三角,考虑到代码的简洁性,每个导航条的最右侧加一个伪元素,这个伪元素需要绝对定位,所以li元素需要加上相对定位。
3)那么三角具体怎么做呢?用css,这里用到了border这个属性,当把一个块元素的高和宽都设置为0后,元素是不可见的,而当加上border边框后,元素会有区域了。比如
.template{
width: 0;
height: 0;
border: 50px solid ;
border-color: #000 #FF0000 #FFFF00 #00FFFF;
}
<div class="template"></div>

4)要是我们把除了上部,其余三块border的颜色都设置为透明的了,是否就会只显示上部了?

5)继续3)中伪类的编写,
<style type="text/css">
.nav-ul{
list-style: none;
}
.nav-ul li{
position: relative;
width: 100px;
height: 40px;
border:1px solid #000;
float: left;
margin-right: 10px;
text-align: center;
line-height: 40px;
}
.nav-ul li:after{
width: 0px;
height: 0px;
content: "";
display: block;
position: absolute;
right: 10px;
top: 40%;
border: 10px solid ;
border-color: green transparent transparent transparent ;
}
</style>

6)点击导航条 三角的形状,拉出下拉菜单,然后三角形变为上三角,这里需要点击事件,在点击的导航条上加一个class,class的伪元素是下三角,下三角根据上面的方法,只要将除了下部,其他三部分的颜色设置为透明
的即可。
.nav-ul li.active:after{
width: 0px;
height: 0px;
content: "";
display: block;
position: absolute;
right: 10px;
top: 16%
border: 10px solid ;
border-color: transparent transparent green transparent ;
}
<div class="nav">
<ul class="nav-ul">
<li class="active">nav1</li>
<li>nav2</li>
<li>nav3</li>
</ul>
</div>

css制作导航栏的上下三角的更多相关文章
- 第8天:CSS制作导航栏
今天主要学习了网页导航栏的制作.注意:引入外部CSS样式时,如果使用background:url(../images/1.png),一定记得用..跳出当前文件夹,回到上级目录. 一.导航栏实现步骤: ...
- CSS制作导航栏
最终效果: 代码: <!DOCTYPE html> <html> <head> <title>#练习册二</title> <style ...
- 巧妙使用checkbox制作纯css动态导航栏
前提:很多时候.我们的网页都需要一个垂直的导航栏.可以分类.有分类.自然就有展开.关闭的功能.你还在使用jquery操作dom来制作吗?那你就out了! 方案:使用checkbox 的 checked ...
- 谈谈一些有趣的CSS题目(八)-- 纯CSS的导航栏Tab切换方案
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- html css二级导航栏
二级导航栏制作: 1.将一级导航栏去除列表样式(list-style:none),并给予浮动,使其横向排列(float:left) 2.给每个li中添加一个<a></a>标签, ...
- css3制作导航栏
<!doctype html><html lang="en"><head> <meta charset="UTF-8&qu ...
- C3制作导航栏分割线及立体风格
//首先写一个导航栏样式 .nav{ width:560px; height: 50px; font:bold 0/50px Arial; text-align:center; ...
- Css之导航栏学习
Css: ul { list-style-type:none; margin:; padding:; overflow:hidden; background-color:blue; /*固定在顶部*/ ...
- CSS 笔记——导航栏、下拉菜单、提示工具
8. 导航栏.下拉菜单.提示工具 (1)导航栏 垂直导航栏 <!DOCTYPE html> <html lang="en"> <head> &l ...
随机推荐
- Android 获取SDCard上图片和视频的缩略图
获取图片缩略图和视频缩略图的方法: Java代码: import java.io.File; import android.app.Activity; import android.graphics. ...
- 未能找到类型或命名空间名称DbContext
Visual Studio调试 .NET 项目时报错: 未能找到类型或命名空间名称“DbContext” 解决办法: 首先 右键 引用——System.Data.Entity 其次,在自己项目里搜索E ...
- String.format 细节
String.format(Locale.US, format, args); format 参数 如果有% 那么%后面必须跟一个合法的字符,否则崩溃, 因为在String.format中 %为特殊字 ...
- WCF 托管在IIS中遇到Http的错误
IIS8中部署WCF服务出错:HTTP 错误 404.3 - Not Found http://www.cnblogs.com/xwgli/archive/2013/03/15/2961022.htm ...
- WordPress Woopra Analytics插件‘ofc_upload_image.php’任意PHP代码执行漏洞
漏洞名称: WordPress Woopra Analytics插件‘ofc_upload_image.php’任意PHP代码执行漏洞 CNNVD编号: CNNVD-201310-195 发布时间: ...
- Toad for Oracle 使用文档
Toad®for Oracle 版本 12.0.1 发行说明 30 July 2013 目录 欢迎使用 Toad for Oracle 版本更新 解决的问题和改进 已知问题 第三方已知问题 升级和兼容 ...
- Red5 项目的流事件回调流程和注意事项
回调流程 参考:Red5的一般客户端连接各个事件的触发顺序,经验证实际过程如下: 程序开始(在RED5启动的时候会自动去启动APP,从而触发以上事件) Start:MyChatRoomappStart ...
- 门面模式 到 socket
http://www.cnblogs.com/java-my-life/archive/2012/05/02/2478101.html 1.门面模式定义: 门面模式是对象的结构模式,外部与一个子系统的 ...
- EF-CodeFirst-表关系-延迟/贪婪加载
表关系建立: http://blog.csdn.net/niewq/article/details/17232321 一对多: namespace LckLib.EF.V6.Models { publ ...
- No valid host was found
set in nova.conf -> scheduler_default_filters=AllHostsFilter Tried without success.