《应用WEB标准实例:艺术网站重构》

作者:关彬 时间:2007-07-13

 

实例效果图:点击查看原图

点击查看原图

 

整体观察思考:

此设计图结构很明显,为3行4列的结构.
主色调为深灰色,导航为黑色.
线条颜色统一.
文字颜色比较统一,为白色,但是考虑整站,文字不做全局的白色,而做为黑色,在容器中分别定义字体颜色.
每个内容模块标题统一,可以用h1来整体定义.

 

在看一下html结构图形化示意图

 

 

制作流程:

布局 --> 细节

 

 

一、布局:

xhtml:

<!--头部-->
<div class="head">
    <div class="login"></div>
    <div class="line"></div>
    <div class="logo"></div>
    <div class="line"></div>
    <div class="nav"></div>
</div>
<!--中间内容-->
<div class="content">
    <div class="left"></div>
    <div class="middle"></div>
    <div class="right"></div>
</div>
<!--页脚-->
<div class="footer"></div>

css:

@import url("http://www.07art.com/public/public01.css");
.head{background:#000;text-align:center;}
.line{border-bottom:1px solid #848484;font-size:0px;height:1px;}
.login,.logo,.nav{text-align:center;color:#fff;width:970px;margin:0px auto;text-align:left;}
.login{height:25px;line-height:25px;}
.logo{height:104px;}
.nav{height:24px;line-height:24px;}
/*中间内容*/
.content{width:970px;height:auto!important;height:100px;min-height:100px;margin-top:15px;border:1px solid #848484;}
.left,.middle,.right,.ad{float:left;display:inline;height:1027px;}
.left{width:250px;border-right:1px solid #848484;}
.middle{width:306px;background:#B1B1B1;}
.right{width:278px;border-right:1px solid #848484;border-left:1px solid #848484;}
.ad{width:130px;text-align:center;}
/*页脚*/
.footer{width:970px;padding:15px;}

 

骨骼出来了,接下来我们该在骨骼上添加"血"与"肉",这样才算完整的.

 

 

 

二、细节制作:

 

(1) TOP制作

先来看一下TOP容器中的细节部分。

 

分析一下这里的结构:

1.一眼看上去,3行的结构,每个行容器中又分左右结构,每个容器下面都包含一条分割线。

2.用户名登陆位置(第一行)和导航条(第三行)的结构雷同,右边内容都可以用右浮动来控制。

思考一下还有什么东西要考虑到呢!:

就是那条线。

到底线在这个图中有什么特殊的地方呢!

首先我们考虑,现在互联网用户普遍用屏幕分辨率为1024*768,随着科技的不段发展,大分辨率和宽屏的用户越来越多,这条线如果固定宽度的话,在大分辨率下就会出现很难看的效果,所以我们考虑做成自适应屏幕宽度的效果.

所以在上面写的布局中,为什么会出现<div class="line"></div>这个看上去无用的标签了.

 

线

xhtml:

<div class="line"></div>

相对应的css

.line{border-bottom:1px solid #848484;font-size:0px;height:1px;}

 

我们先来写第一行

xhtml:

<div class="login">
    <span>用户名 <input name="&nbsp;" type="text" class="width01" /> 密码 <input name="&nbsp;" type="text" class="width01"/> <input name="&nbsp;" type="button" value="登陆" class="inp"/><input name="&nbsp;" type="button" value="注册" class="inp"/> <input type="button" value="收藏麦子" class="button"/></span>
您的位置:新闻频道
</div>

注意:span设置为float:right;我写朋友问我为什么当写float:right时,要把右边标签和里面的内容写在前面,我的解释是,这个是ie的bug。

相对应的css

.head span{float:right;padding-top:3px;}
.width01{width:80px;}
.button{background:url(../images/button.gif) no-repeat;width:76px;height:15px;color:#FECC00;cursor:pointer;}

.head span input{border:none;}

 

第二行

xhtml:

<div class="logo">
    <a href="#"><img src="images/logo.gif" alt="artmaz"/></a><a href="#"><img src="images/ad.gif" alt="" class="logoAd"/></a>
</div>

相对应的css

.logo img{float:left;}
.logo .logoAd{float:right;}

 

第三行

xhtml:

<div class="nav">
    <span>关键字 <input name="&nbsp;" type="text" class="width01" /> <input type="button" value="麦子全站搜索" class="button"/></span><a href="#">首页</a> | <a href="#">新闻</a> | <a href="#">展览</a> | <a href="#">艺术空间</a> | <a href="#">在线作品</a> | <a href="#">艺术人</a> | <a href="#">论坛</a>
</div>

相对应的css

.nav,.nav a{color:#fff;font-size:14px;}

 

这样头部的东西已经写完了,我们再来回顾一下完整的头部的代码吧。

 

xhtml:

<!--头部-->
<div class="head">
<div class="login">
<span>用户名 <input name="&nbsp;" type="text" class="width01" /> 密码 <input name="&nbsp;" type="text" class="width01"/> <input name="&nbsp;" type="button" value="登陆" class="inp"/><input name="&nbsp;" type="button" value="注册" class="inp"/> <input type="button" value="收藏麦子" class="button"/></span>
您的位置:新闻频道
</div>
<div class="line"></div>
<div class="logo">
<a href="#"><img src="images/logo.gif" alt="artmaz"/></a><a href="#"><img src="images/ad.gif" alt="" class="logoAd"/></a>
</div>
<div class="line"></div>
<div class="nav"><span>关键字 <input name="&nbsp;" type="text" class="width01" /> <input type="button" value="麦子全站搜索" class="button"/></span><a href="#">首页</a> | <a href="#">新闻</a> | <a href="#">展览</a> | <a href="#">艺术空间</a> | <a href="#">在线作品</a> | <a href="#">艺术人</a> | <a href="#">论坛</a> </div>
</div>

相对应的css

@import url("http://www.07art.com/public/public01.css");
/*头部*/
.head{background:#000;text-align:center;}
.line{border-bottom:1px solid #848484;font-size:0px;height:1px;}
.login,.logo,.nav{text-align:center;color:#fff;width:970px;margin:0px auto;text-align:left;}
.login{height:25px;line-height:25px;}
.logo{height:104px;}
.nav{height:24px;line-height:24px;}
/*中间内容*/
.content{width:970px;height:auto!important;height:100px;min-height:100px;margin-top:15px;border:1px solid #848484;}
.left,.middle,.right,.ad{float:left;display:inline;height:1027px;}
.left{width:250px;border-right:1px solid #848484;}
.middle{width:306px;background:#B1B1B1;}
.right{width:278px;border-right:1px solid #848484;border-left:1px solid #848484;}
.ad{width:130px;text-align:center;}
/*页脚*/
.footer{width:970px;padding:15px;}

/*--------------------------------------------------------------*/
/*头部css*/

.head span{float:right;padding-top:3px;}
.width01{width:80px;}
.button{background:url(../images/button.gif) no-repeat;width:76px;height:15px;color:#FECC00;cursor:pointer;}
.head span input{border:none;}
.logo{height:104px;}
.logo img{float:left;}
.logo .logoAd{float:right;}

.nav,.nav a{color:#fff;font-size:14px;}

 

 

 

(2) 中间内容制作 与 底部制作 有时间在写,有兴趣的朋友可以看源文件自己研究一下。

 

 

 

源代码: