用css网站布局之十步实录(笔记)

用css网站布局之十步实录 目录: http://edu.136z.com/Web/21607.html
第一步:规划网站
http://edu.136z.com/Web/21608.html

第二步:创建html模板及文件目录等
http://edu.136z.com/Web/21607.html

第三步:将网站分为五个div 网页基本布局
http://edu.136z.com/Web/21606.html

第四步:网页布局与div浮动等
http://edu.136z.com/Web/21605.html

第五步:网页主要框架之外的附加结构的布局与表现
http://edu.136z.com/Web/21604.html

第六步:页面内的基本文本的样式(css)设置
http://edu.136z.com/Web/21603.html

第七步:网站头部图标与logo部分的设计
http://edu.136z.com/Web/21602.html

第八步:页脚信息的表现设置
http://edu.136z.com/Web/21601.html

第九步:导航条的制作
http://edu.136z.com/Web/21600.html

第十步:解决IE浏览器的显示BUG
http://edu.136z.com/Web/21599.html

最终效果如图:


本教程原作者Steve Dennis,由Jorux翻译。
Tags:

用css网站布局之十步实录!(二)

1.创建html模板。
  代码如下:

 Example Source Code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
<title>CompanyName - PageName</title>
<meta http-equiv="Content-Language" content="en-us" />
<meta http-equiv="imagetoolbar" content="no" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<meta name="description" content="Description" />
<meta name="keywords" content="Keywords" />
<meta name="author" content="Enlighten Designs" />
<style type="text/css" media="all">@import "css/master.css";</style>
</head>
<body>
</body>
</html>
  将其保存为index.html,并创建文件夹css,images,网站结构如下:







第三步:将网站分为五个div,网页基本布局的基础:

1.将“第一步”提到的五个部分都放入盒子中,在html文件中写入:

 Example Source Code

<div id="page-container">
<div id="main-nav">Main Nav</div>
<div id="header">Header</div>
<div id="sidebar-a">Sidebar A</div>
<div id="content">Content</div>
<div id="footer">Footer</div>
</div>
2.为了将五个部分区分开来,我们将这五个部分用不同的背景颜色标示出来,在css文件写入:

 Example Source Code

#main-nav {
background: red;
height: 50px;
}
#header {
background: blue;
height: 150px;
}
#sidebar-a {
background: darkgreen;
}
#content {
background: green;
}
#footer {
background: orange;
height: 66px;
}
  表现如下:




第四步:网页布局与div浮动等

1.浮动:首先让边框浮动到主要内容的右边。用css控制浮动。

 Example Source Code

#sidebar-a {
float: right;
width: 280px;
background: darkgreen;
}
  表现如下:



2.往主要内容的盒子中写入一些文字。在html文件中写入:

 Example Source Code

<div id="content">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam gravida enim ut risus.
Praesent sapien purus, ultrices a, varius ac, suscipit ut, enim. Maecenas in lectus.
Donec in sapien in nibh rutrum gravida. Sed ut mauris. Fusce malesuada enim vitae lacus
euismod vulputate. Nullam rhoncus mauris ac metus. Maecenas vulputate aliquam odio.
Duis scelerisque justo a pede. Nam augue lorem, semper at, porta eget, placerat eget,
purus. Suspendisse mattis nunc vestibulum ligula. In hac habitasse platea dictumst.
</div>


  但是你可以看到主要内容的盒子占据了整个page-container的宽度,我们需要将#content的右边界设为280px。以使其不和边框发生冲突。
  css代码如下:

 Example Source Code

#content {
margin-right: 280px;
background: green;
}
  同时往边框里写入一些文字。在html文件中写入:

 Example Source Code

<div id="sidebar-a">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam gravida enim ut risus.
Praesent sapien purus, ultrices a, varius ac, suscipit ut, enim. Maecenas in lectus.
Donec in sapien in nibh rutrum gravida. Sed ut mauris. Fusce malesuada enim vitae lacus
euismod vulputate. Nullam rhoncus mauris ac metus. Maecenas vulputate aliquam odio.
Duis scelerisque justo a pede. Nam augue lorem, semper at, porta eget, placerat eget,
purus. Suspendisse mattis nunc vestibulum ligula. In hac habitasse platea dictumst.
</div>
  表现如下:



  这也不是我们想要的,网站的底框跑到边框的下边去了。这是由于我们将边框向右浮动,由于是浮动,所以可以理解为它位于整个盒子之上的另一层。因此,底框和内容盒子对齐了。
  因此我们往css中写入:

 Example Source Code

#footer {
clear: both;
background: orange;
height: 66px;
}
  表现如下:




 
Tags:


第五步:网页主要框架之外的附加结构的布局与表现

  除网页主要框架之外的附加结构的表现(Layout),包括以下内容:
  1.主导航条;
  2.标题(heading),包括网站名和内容标题;
  3.内容;
  4.页脚信息,包括版权,认证,副导航条(可选)。

  加入这些结构时,为了不破坏原有框架,我们需要在css文件"body"标签(TAG)下加入:
CODE:


.hidden {
display: none;
}

  ".hidden"即我们加入的类(class),这个类可以使页面上任意属于hidden类的元素(element)不显示。这些会在稍后使用,现在请暂时忘记它。

现在我们加入标题(heading):
  先回到HTML的代码,<h1>到<h6>是我们常用的html标题代码。比如我们一般用<h1>网站名</h1>,<h2>网站副标题</h2>,<h3>内容主标题</h3>等。我们往html文件的Header层(Div)加入:
CODE:


<div id="header">
<h1>Enlighten Designs</h1>
</div>

  刷新一下页面,你就可以看到巨大的标题,和标题周围的空白,这是因为<h1>>标签的默认大小和边距(margin)造成的,先要消除这些空白,需要加入:

CODE:


h1 {
margin: 0;
padding: 0;
}

接下来是导航条:
  控制导航条表现的css代码相对比较复杂,我们将在第九步或是第十步中详细介绍。现在html文件加入导航代码:
CODE:


<div id="main-nav">
<ul>
<li id="about"><a href="http://css.jorux.com/wp-admin/post.php#" >About</a></li>
<li id="services"><a href="http://css.jorux.com/wp-admin/post.php#" >Services</a></li>
<li id="portfolio"><a href="http://css.jorux.com/wp-admin/post.php#" >Portfolio</a></li>
<li id="contact"><a href="http://css.jorux.com/wp-admin/post.php#" >Contact Us</a></li>
</ul>
</div>

  (注:原教程使用了dl和dt,jorux在这使用了更常用的ul和li标签)
  目前导航条的表现比较糟糕,但是要在以后的教程中介绍其特殊表现,故需要暂时隐藏导航条,于是加入:
CODE:


<div id="main-nav">
<dl class="hidden">
<dt id="about"><a href="http://css.jorux.com/wp-admin/post.php#" >About</a></dt>
<dt id="services"><a href="http://css.jorux.com/wp-admin/post.php#" >Services</a></dt>
<dt id="portfolio"><a href="http://css.jorux.com/wp-admin/post.php#" >Portfolio</a></dt>
<dt id="contact"><a href="http://css.jorux.com/wp-admin/post.php#" >Contact Us</a></dt>
</dl>
</div>


[1] [2] [3]  下一页
Tags:gs:



我们跳一步,先到页脚:
  页脚包括两部分:左边的版权,认证和右边的副导航条。
  我们先要让副导航条向右浮动,就像之前处理Sidebar和Content关系的一样,需要加入一个新的层(div):
CODE:


<div id="footer">
<div id="altnav">
<a href="http://css.jorux.com/wp-admin/post.php#" >About</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Services</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Portfolio</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Contact Us</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Terms of Trade</a>
</div>
</div>

  理论上,我们可以控制源文件上的任意元素的浮动,但由于IE浏览器的BUG,被浮动层需要首先出现在源文件上,也就是说我们把副标题放在版权和认证的前面:
CODE:


<div id="footer">
<div id="altnav">
<a href="http://css.jorux.com/wp-admin/post.php#" >About</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Services</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Portfolio</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Contact Us</a> -
<a href="http://css.jorux.com/wp-admin/post.php#" >Terms of Trade</a>
</div>
Copyright ? Enlighten Designs
Powered by <a href="http://www.enlightenhosting.com/" >Enlighten Hosting</a> and
<a href="http://www.vadmin.co.nz/" >Vadmin 3.0 CMS</a></div>

  刷新你的页面,你将看到如下所示:



最后我们回到内容部分:
  用<h2<>表现内容标题–"About","Contact us";用<p>表现段落;用</br>断行。

CODE:


<div id="content">
<h2>About</h2>
<p><strong>Enlighten Designs</strong> is an Internet solutions provider that specialises in
front and back end development. To view some of the web sites we have created view our
portfolio.</p>
<p>We are currently undergoing a 'face lift', so if you have any questions or would
like more information about the services we provide please feel free to contact us.</p>
<h2>Contact Us</h2>
<p>Phone: (07) 853 6060<br />
Fax: (07) 853 6060<br />
Email: <a href="mailto:info@enlighten.co.nz" >info@enlighten.co.nz</a><br />
P.O Box: 14159, Hamilton, New Zealand</p>
<p><a href="http://css.jorux.com/wp-admin/post.php#" >More contact information…</a></p>
</div>


上一页  [1] [2] [3]  下一页
Tags:


第六步:页面内的基本文本的样式(css)设置

  你是不是厌倦了那些大红大绿的背景,现在是去掉它们的时候了,只保留导航条的红色背景。真是难为您居然能坚持学习本教程到此,很好,再过几步,你就能很好了解css控制整个网页版面(Layout)的能力。
  先设置全局的文本样式:

 Example Source Code [www.136z.com]body {
font-family: Arial, Helvetica, Verdana, Sans-serif;
font-size: 12px;
color: #666666;
background: #ffffff;
}
  一般我们把body标签放在css文件的顶端,当然你要是执意要把它放在尾部,浏览器不会和你计较。font-family内的顺序决定字体显示优先级,比方如果所在计算机没有Arial字体,浏览器就会指向Helvetica字体,依次类推;color指字体颜色;background指背景颜色。
  如果你都是按本教程的操作,应该能看到下图:



  你可以看到内容(content)的各块(block)之间的间隙太小了,而基于最初的设计,内容标题(即<h2>)和正文之间的间隙大概是15px,每个段落的间距也大概是15px,所以在css中写入:

 Example Source Code [www.136z.com]#content h2 {
margin: 0;
padding: 0;
padding-bottom: 15px;
}
#content p {
margin: 0;
padding: 0;
padding-bottom: 15px;
}
  然后需要让content层的四周都空出25px的间隙,这本来是件很简单的事,理论上我们只需在#content的css文件中加入padding: 25px;就行了,但是IE给我们上了"一课",它的固有BUG根本不能按我们的想象表现。解决这个问题有两种办法。第一种办法是区别浏览器写入两种代码(HACK IE),但因为间隙(padding,在Dreamweaver中又叫填充)使用很频繁,所以我们用另一种办法。
  我们往需要填充的层中加入padding层,它的功能仅限于显示间隙:

 Example Source Code [www.136z.com]<div id="sidebar-a">
<div class="padding">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam gravida enim ut risus.
Praesent sapien purus, ultrices a, varius ac, suscipit ut, enim. Maecenas in lectus.
Donec in sapien in nibh rutrum gravida. Sed ut mauris. Fusce malesuada enim vitae lacus
euismod vulputate. Nullam rhoncus mauris ac metus. Maecenas vulputate aliquam odio.
Duis scelerisque justo a pede. Nam augue lorem, semper at, porta eget, placerat eget,
purus. Suspendisse mattis nunc vestibulum ligula. In hac habitasse platea dictumst.
</div>
</div>
  同样的,再往html文件的content层中加入padding层。
  由于padding层的功能仅是制造空隙,所以不要设置它的宽度,只需在css中添加:

 Example Source Code [www.136z.com]#sidebar-a {
float: right;
width: 280px;
}
#sidebar-a .padding {
padding: 25px;
}
#content {
margin-right: 280px;
}
#content .padding {
padding: 25px;
}
  就像我们之前用的方法一样,我们只选择了类(class)为padding,且父类(parent)为#content或#sidebar-a的元素(element)。
  接下来设置行距,content和sidebar-a的行距需要加宽,但在css中是没有行距(leading)这种属性(attribute)的,但是有行高(line-height)属性,因此往css中写入:

 Example Source Code [www.136z.com]#sidebar-a {
float: right;


[1] [2]  下一页
Tags:












width: 280px;
line-height: 18px;
}
#content {
margin-right: 280px;
line-height: 18px;
}
  现在可以看到标题"about"和"contact us"显得相当突兀,这是因为我们使用的字体并不是一种网页字体,我们需要将其替换为以下图片,并将其存放于/images/headings/文件夹中:


  替换方法为,在html文件的<h2>标签中写入:

 Example Source Code [www.136z.com]<h2><img src="images/headings/about.gif" width="54" height="14" alt="About" /></h2>
<h2> <img src="images/headings/contact.gif" width="98" height="14" alt="Contact Us" /> </h2>
  于是得到下图:



 


上一页  [1] [2]
Tags:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年11月    »
123
45678910
11121314151617
18192021222324
252627282930
搜索
标签列表
网站分类
最新留言
    文章归档
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.闽ICP备11018667号-2