仿sohu频道切换效果

本文详细介绍了如何使用CSS和JavaScript来创建一个类似搜狐频道切换的效果。通过无序列表和浮动布局,配合鼠标悬停事件改变div的display属性,实现在鼠标移动到特定选项时显示相应内容的动态效果。代码示例中,当鼠标移到'招生'、'热招'、'出国'上时,会显示相应的超链接列表,同时提供背景颜色变化的交互反馈。
摘要由CSDN通过智能技术生成

 

仿sohu频道切换效果

鼠标移动到招生就显示招生的超链接

  1. 分析: 
  • 现在美工最喜欢使用无序列表因为那个控制起来比较简单
  • 右面实际上有3个div,但是每次只显示一个但是这个布局是不会被破坏的根据用户的需要选择对应的div就好了
  • 还要事先约好显示文字的个数

 

  1. 代码:

写代码就得一点一点的写不然有错误很容易调试个半天还会怀疑学到的东西是否有用

css文件:

body{

font-size:12px;

}

正式的美工会给定宽和高的不可能随便定义

.div1{

width:126px;

height:156px;

调试方便

/* background-color:pink; */

}

导航条

.navi{

width:21px;

height:156px;

/* background-color:yellow; */

右面还有个div

float:left;

}

需要清一下

一般margin 和padding要一起清

.navi ul{

padding:0px;

margin-left:0px;

margin-top:0px;

float:left;

}

.navi li{

去掉列表左边的项目符号

list-style-type:none;

width:19px;

给个高度把div给撑满

height:42px;

和上面一个保持一点距离

margin-top:2px;

text-align:center;文字居中左右居中

background-color:silver;

padding-top:8px;控制上面的padding

/* padding-bottom:8px; */

/* position:absolute; */

}

.zs,.rz,.cg{

左边稍微留点空间

width:101px;

height:154px;

/* background-color:silver; */

margin-left:3px;

margin-top:2px;

float:left;

}

.zs ul,.rz ul,.cg ul{

padding:0px;

margin-top:0px;

float:left;

.zs ul li,.rz ul li,.cg ul li{

list-style-type:none;

line-height:19px;行高

/* width:20px;

height:50px;

margin-top:2px;

text-align:center;

background-color:silver; */

}

.rz{

除了第一个其他的不可见

display:none;

}

.cg{

/* visibility:hidden; */

display:none;  

/* 这里注意:必须使用display,

display就是不显示,visibility是隐藏,但是还占着位置,只是隐藏不显示 */

}

html代码:

<!DOCTYPE html>

<html>

<head>

这句话不需要记忆不会有人你这个东西的

<link rel="stylesheet" href="mycss.css" type="text/css">

<script language="javascript">  

function change(val,obj){

obj.style.backgroundColor="#ffc12d";

这里注意:必须使用display

display就是不显示,

visibility是隐藏,但是还占着位置,只是隐藏不显示

if(val=='zs'){

//zs.style.visibility='visible';

//rz.style.visibility="hidden";

//cg.style.visibility="hidden";

zs.style.display='block';显示这里使用inline应该也没有问题

rz.style.display="none";隐藏

cg.style.display="none";

}else if(val=='rz'){

zs.style.display='none';

rz.style.display="block";

cg.style.display="none";

}else if(val=='cg'){

zs.style.display='none';

rz.style.display="none";

cg.style.display="block";

}

}

function change2(obj){

obj.style.backgroundColor="silver";

}

</script>

</head>

<body>

<div class="div1">

<div class="navi">

搜索引擎比较喜欢ul和li

具体可以去看搜索引擎的书

<ul>

<li οnmοuseοver="change('zs',this)" οnmοuseοut="change2(this)">招生</li>

<li οnmοuseοver="change('rz',this)" οnmοuseοut="change2(this)">热招</li>

<li οnmοuseοver="change('cg',this)" οnmοuseοut="change2(this)">出国</li>

</ul>

</div>

<!-- 超链接div -->

<div id="zs" class="zs">

<ul>

<li><a href="#">招生招生招生招生</a></li>

<li><a href="#">招生招生招生招生</a></li>

<li><a href="#">招生招生招生招生</a></li>

<li><a href="#">招生招生招生招生</a></li>

<li><a href="#">招生招生招生招生</a></li>

<li><a href="#">招生招生招生招生</a></li>

<li><a href="#">招生招生招生招生</a></li>

<li><a href="#">招生招生招生招生</a></li>

</ul>

</div>

<div id="rz" class="rz">

<ul>

<li><a href="#">热招热招热招热招</a></li>

<li><a href="#">热招热招热招热招</a></li>

<li><a href="#">热招热招热招热生</a></li>

<li><a href="#">热招热招热招热招</a></li>

<li><a href="#">热招热招热招热招</a></li>

<li><a href="#">热招热招热招热招</a></li>

<li><a href="#">热招热招热招热招</a></li>

<li><a href="#">热招热招热招热招</a></li>

</ul>

</div>

<div id="cg" class="cg">

<ul>

<li><a href="#">出国出国出国出国</a></li>

<li><a href="#">出国出国出国出国</a></li>

<li><a href="#">出国出国出国出国</a></li>

<li><a href="#">出国出国出国出国</a></li>

<li><a href="#">出国出国出国出国</a></li>

<li><a href="#">出国出国出国出国</a></li>

<li><a href="#">出国出国出国出国</a></li>

<li><a href="#">出国出国出国出国</a></li>

</ul>

</div>

</div>

</body>

</html>

效果图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java邦邦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值