兼做美工-首页新闻tab转换
最近有个项目,我负责网站部分模块,因此,需要设计页面也要写页面,也要写后台。于是就挺杯具的,没有美工细胞的我,兼做了美工
下面是我制作首页新闻部分的设计:
任务如下:
1.用ps制作如下三个图片:
2. 利用上面三个图片,实现如下效果:
首先要先设置body的css属性(字体大小,背景等等):
body{
margin:0;
font-family:"宋体",Arial,Verdana,Helvetica,sans-serif;
width:100%;
font-size:12px;
color: #3E3E3E;
background:#ffffff;
}
然后编写骨架部分(也就是html部分):
<div id="right">
<div id="news">
<div class="news_div" style=" ">
<div class="news_ul" style="">
<ul id="main_0"><li id="menu_0" onclick="setTab(0,0)" class="news_li_1" >
<a class="news_a" >最新新闻</a></li>
<li id="menu_1" onclick="setTab(0,1)" class="news_li_2" ><a class="news_a">最新报价</a></li></ul>
</div>
<div>
<p>
<ul id="n0" class="new_contant" style="display:block">
<li>某某某最新票讯</li>
<li>某某某最新票讯</li>
<li>某某某最新票讯</li>
</ul>
</p>
<p>
<ul id="n1" class="new_contant">
<li>某工程站最新票讯</li>
<li>某工程站最新票讯</li>
<li>某工程站最新票讯</li>
</ul>
</p>
</div>
</div>
</div>
<div id="bussiny">
<div class="news_div" >
<div class="news_ul" style=" border-bottom:2px solid #cca655; " >
<ul id="main_1">
<li class="buss_li_1" id="bmenu_0" onclick="setTab(1,0)" ><a class="news_a" >最近报价</a></li>
<li id="bmenu_1" onclick="setTab(1,1)" class="news_li_2" ><a class="news_a" >最新优惠</a></li>
<li id="bmenu_2" onclick="setTab(1,2)" class="news_li_2" ><a class="news_a">最新消息</a></li>
</ul>
</div>
<div id="buss_contant">
<p>
<ul id="b0" class="new_contant" style="display:block">
<li>某某某最新票讯</li>
<li>某某某最新票讯</li>
<li>某某某最新票讯</li>
</ul>
</p>
<p>
<ul id="b1" class="new_contant">
<li>某某某最新爆料</li>
<li>某某某最新爆料</li>
<li>某某某最新爆料</li>
</ul>
</p>
<p>
<ul id="b2" class="new_contant">
<li>某工程站最新票讯</li>
<li>某工程站最新票讯</li>
<li>某工程站最新票讯</li>
</ul>
</p>
</div>
</div>
</div>
</div>
然后写皮肤(css):
#right{ position:relative; left:500px}
#news{
width:235px;
height:225px;
background: url(images/news_bg.jpg) left top no-repeat;
margin-bottom:10px;
}
#bussiny{
width:235px;
height:234px;
background: url(images/bussiny.jpg) left top no-repeat;
margin-bottom:10px;
}
.news_div{position:relative;top:30px; height:24px; width:230px; left:1px; }
.news_ul { width:100%; border-style: none ; border-bottom:2px solid #acbe82;height:24px; }
.news_ul ul{ list-style-type:none}
.news_ul li{ display:block; float:left;}
.news_ul_1 a:link{ color:#00F; text-decoration:none;}
.news_ul_1 a:visited { color: #00F; text-decoration:none;}
.news_ul_1 a:hover { color: #c00; text-decoration:underline;}
.news_li_1 {width:62px; position:relative; left:-30px; top:2px; height:24px;background-image:url(images/news_bander.gif); background-position:top}
.news_li_2 {width:62px; position:relative; left:-30px; height:24px; background-image:url(images/news_bander.gif); background-position:0px 52px; }
.buss_li_1 {width:62px; position:relative; left:-30px; top:2px; height:24px;background-image:url(images/news_bander.gif); background-position:0px 104px}
.news_a { left:7px; position:relative; top:7px; display:block; cursor:pointer;}
.new_contant{position:absolute; top:44px; left:-10px; list-style-type:circle; display:none}
整个过程其实蛮简单的,但是,实际操作过程,却郁闷死我,div的位置和背景的位置非常难调,还有就是浏览器的兼容性问题,差点没把握累死。自己看来真的不是美工的料
现在骨架和皮肤做好了···我们接下来就是要让他动起来···这个对于我们程序员来说,就是小菜一碟了:
<script type="text/javascript">
//m=0为news,m=1为buss
function setTab(m,n){
var tli;
var mli;
if(m==0)
{
tli=document.getElementById("menu_"+n)
mli=document.getElementById("main_"+m).getElementsByTagName("li");
for(i=0;i<mli.length;i++){
if(n==i)
{
mli[i].className="news_li_1";
document.getElementById("n"+i).style.display="block";
}
else
{
mli[i].className="news_li_2";
document.getElementById("n"+i).style.display="none";
}
}
}
else
{
tli=document.getElementById("bmenu_"+n)
mli=document.getElementById("main_"+m).getElementsByTagName("li");
for(i=0;i<mli.length;i++){
if(n==i)
{
mli[i].className="buss_li_1";
document.getElementById("b"+i).style.display="block";
}
else
{
mli[i].className="news_li_2";
document.getElementById("b"+i).style.display="none";
}
}
}
}
</script>
到这里,tab终于搞定了···





浙公网安备 33010602011771号