HTML tab菜单选项

       我们的目标是要做这个一个tab菜单选项,如图:

       

    讲解的步骤如下:

   1.分解图形,我们最先可能不需要完成这么复杂的图片效果,只需要达到如下功能即可:

    

这部分比较好设计,大概是由两个div组成,每个div内都是无序列表,大体HTML结构如下:

     

<body id="design">
<ul id="tabnav">
  <li>Home</li>
  <li>Web Dev</li>
  <li>Web Design</li>
  <li>Map</li>
</ul>
<ul id="list">
  <li>1. There some good news.</li>
  <li>2. Not only good news.</li>
  <li>3. The text here are examples</li>
  <li>4. Not only good news.</li>
</ul>
</body>

基本结构有了就需要使用css来控制样式:

body{
margin:10px;}
ul#tabnav{
list-style:none;
font:bold 12px verdana,arial;
padding-left:0px;
padding-bottom:23px;
border-bottom:1px solid #11a3ff;
margin:0px;

}
ul#tabnav li{
float:left;
border:solid #11a3ff 1px;
background-color:#a3dbff;
margin:0px 3px 0px 0px;
height:22px;
}
ul#list{
border-left:solid #11a3ff 1px;
border-bottom:solid #11a3ff 1px;
border-right:solid #11a3ff 1px;
padding-top:15px;
padding-bottom:15px;
font-size:12px;
background-color:fff;
margin:0px;
}


2 这部分完成以后,因为每个菜单选项都是一个超链接,所以需要对基本的HTML结构进行修正
<body id="design">
<ul id="tabnav">
  <li><a href="#">Home</a></li>
  <li><a href="#">Web Dev</a></li>
  <li><a href="#">Web Design</a></li>
  <li><a href="#">Map</a></li>
</ul>
<ul id="list">
  <li>1. There some good news.</li>
  <li>2. Not only good news.</li>
  <li>3. The text here are examples</li>
  <li>4. Not only good news.</li>
</ul>
</body>

而相应的需要对css添加代码控制链接

ul#tabnav a:link,ul#tabnav a:visited{
text-decoration:none;
display:block;
padding:5px 10px 3px 10px;
color:#006eb3;
}
ul#tabnav a:hover{
background:#006eb3;
color:#fff;
}
就达到了基本目的。

3.最后一个问题是,如何使得当前菜单的选项是背景是空白的,而且没有下划线。基本思路是,把当前菜单的下边框的线变成白色,覆盖掉下面的蓝色部分。如何知道识别当前菜单呢,需要使用class来识别。因此我们再次对HTML结构进行修正

<body id="design">
<ul id="tabnav">
	<li class="home"><a href="home.htm">Home</a></li>
	<li class="dev"><a href="dev.htm">Web Dev</a></li>
	<li class="design"><a href="design.htm">Web Design</a></li>
	<li class="map"><a href="map.htm">Map</a></li>
</ul>
<div id="content">
	<ul id="list">
		<li>1. There some good news.</li>
		<li>2. Not only good news.</li>
		<li>3. The text here are examples</li>
		<li>4. Not only good news.</li>
	</ul>
</div>
</body>

而css代码如下:

body#home li.home, body#dev li.dev,	/* 当前页面的菜单项 */
body#design li.design, body#map li.map{
	border-bottom:1px solid #FFFFFF;	/* 白色下边框,覆盖<ul>中的蓝色下边框 */
	color:#000000;
	background-color:#FFFFFF;
}
body#home li.home a:link, body#home li.home a:visited,	/* 当前页面的菜单项的超链接 */
body#dev li.dev a:link, body#dev li.dev a:visited,
body#design li.design a:link, body#design li.design a:visited,
body#map li.map a:link, body#map li.map a:visited{
	color:#000000;
	background-color:#FFFFFF;
}
body#home li.home a:hover, body#dev li.dev a:hover,
body#design li.design a:hover, body#map li.map a:hover{
	color:#006eb3;
	text-decoration:underline;
}


讲解思路补充:第一,两个盒子,第二,两个盒子需要边框,第三,去掉列表样式,第四 把垂直的选项变成水平的 第五,把水平选项胡间隔拉开(重点说明为什么要margin-bottom)第五,给每个选项做一个盒子,补充背景颜色和字体样式。第六 最关键的步骤讲解选项页面变化的原理 第七 在变化的基础上改变具体每个选项的颜色。
 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值