2天驾驭DIV+CSS!第七课

平时我们在布局页面的时候,还是要以Float为主,Position为辅!这样你才能做出高质量的页面。

我们先把上节课最后总结一句话拿出来
如果用position来布局页面,父级元素的position属性必须为relative,而定位于父级内部某个位置的元素,最好用absolute,因为它不受父级元素的padding的属性影响,当然你也可以用position,不过到时候计算的时候不要忘记padding的值。
如果你还是不能太明白这句话,我们就做个实例,把我们第5节页面的头部blog区域用定位(position)来布局一下

HTML代码和原来的没有区别:
<div id="Logo">
    <a href="#" id="logoLink"></a>
</div>
CSS代码就有变化了,咱先看看原来的CSS代码
#Logo{
    height:80px;
}
#logoLink{
    display:block;
    width:173px;
    height:46px;
    background:url(../Images/logo.gif) no-repeat;
    float:left;
    margin-top:20px;
}
原来是用“浮动+外边距”布局的,将#logoLink定位在距离顶部20像素,左侧0像素的地方;
如果用position的方法,CSS就应该这么写,首先给#logo加上“position:relative;”,给#logoLink加上“position:absolute;”,然后让#logoLink距离上面20像素,左侧0像素,具体代码如下:
#Logo{
height:80px;
position:relative;/*相对定位*/
}
#logoLink{
display:block;
width:173px;
height:46px;
background:url(../Images/logo.gif) no-repeat;
position:absolute;
top:20px;
left:0;
}
怎么样效果和原来的一样吧,就是这么简单.
什么?CSS代码多了?的确,由原来的两句话,变成现在的四句,但是有没有发现,就靠Position我们就可以将Logo随意的定位于任何一个地方!这就是它的灵活的地方!如果在页面顶部在有一行“加入收藏 设为首页 RSS订阅”如下图,你是不是也可以很方便的将它们定位于右上角呢~

但是定位(position)有一个缺点,不会自适应内部元素的高度,所以平时我们在布局页面的时候,如果某个或者某些模块高度永远不变,就可以用定位,但是KwooJan建议大家布局页面的时候,还是要以Float为主,Position为辅!这样你才能做出高质量的页面。
=========================================================================
最后,请大家记住我这句话:“布局页面,Float为主,Position为辅!”
=========================================================================
好,我们有关页面布局的教程,算是已经完结.
如果能悟透每节课内容,你现在就可以拍着胸脯说“我是DIV+CSS高手!”哈哈,不过你要知道,DIV+CSS的叫法是不标准的,应该叫... ...
什么你想不起来了?!
咣当!~~
本节课源代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<link rel="stylesheet" type="text/css" href="CSS/css.css"/>
<title>css学习 alixixi.com整理</title>
</head>

<body>
<div id="Logo">
 <a href="#" id="logoLink"></a>
</div>
<div id="Nav">
 <ul>
     <li><a href="#">HOME</a></li>
        <li><a href="#">PHOTOS</a></li>
        <li><a href="#">ABOUT</a></li>
        <li><a href="#">LINKS</a></li>
        <li><a href="#">CONTACT</a></li>
    </ul>
</div>
<div id="Banner"></div>
<div id="Content"></div>
<div id="Footer"></div>
</body>
</html>
/* 公共部分 */
body,div,a,img,p,form,h1,h2,h3,h4,h5,h6,input,textarea,ul,li,dt,dd,dl{margin:0;padding:0;}
#Logo,#Nav,#Banner,#Content,#Footer{width:900px; margin:0 auto;}
/*头部logo区域*/
#Logo{
 height:80px;
 position:relative;/*相对定位*/
}
#logoLink{
 display:block;
 width:173px;
 height:46px;
 background:url(../Images/logo.gif) no-repeat;
 position:absolute;
 top:20px;
 left:0;
}
/*导航条*/
#Nav{height:42px;}
#Nav ul{
 height:42px;
 list-style:none;
 background:#56990c;
}
#Nav ul li{height:42px; float:left;}
#Nav ul li a{
 display:block;/*转化成块状元素,因链接是内链元素,若想给它定义下面的属性,必须将它转化成块状元素,*/
 height:42px; 
 color:#FFF;
 padding:0 10px;
 line-height:42px;
 font-size:14px;
 font-weight:bold;
 font-family:Arial;
 text-decoration:none;/*去除链接样式,默认是有下划线的,加上这句就没有任何样式,下划线也没有了*/
 float:left;
}
#Nav ul li a:hover{background:#68acd3;}

本文来自www.cssxuexi.cn *尊重他人劳动成果,转载请自觉注明出处! 

时间: 2025-01-20 19:59:42

2天驾驭DIV+CSS!第七课的相关文章

2天驾驭DIV+CSS!第二课

大家应该明白Float的作用了吧,就是为了消除块状元素"霸权主义"的一把利器! 页面布局有两种方式 1)浮动Float 2)定位Position 今天就来一个小小的练习,让大家理解Float的含义 [例子] 要求: 1)两个方块,一个红色#900,一个蓝色#009: 2)红色方块宽度和高度均为200像素,蓝色方块 宽度为300像素,高度为200像素: 3)红色方块蓝的上外边距(margin-top)和左外边距(margin-left)均为20像素: 页面效果如下: 源代码如下: <

2天驾驭DIV+CSS!第一课

当你看完教程,肯定会说XHTML+CSS就这么简单!easy! [例子] 要求: 1)宽度.高度均是200像素: 2)颜色为红色#900: 自己做做,看看能不能作出来?先不要看我的代码,如果真的做不出来,就下载下来,跟着我下面说的一步一步修改. 下面是我的代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr

2天驾驭DIV+CSS!第五课(下)

大家经常会进入一个误区,会认为在Web2.0时代,只要页面中用了Table就是没有技术含量,就是丢人,要是页面中没有一个table,所有元素全部用DIV做,那就是牛人!大家注意了,要是某人对你说,我的整个网站没有应用一个Table,这时候你就可以认为这个人做页面没有什么技术含量 我们接着上节课,继续学习,我把页面整体效果发出来,方便大家学习   [第七步 内容左侧板块(ContentL)布局]我们分析一下他的结构,主要包括标题和文章内容两块,并且标题和内容之间有一条虚线,而第二篇文章的内容部分是

2天驾驭DIV+CSS!第五课(上)

一般网站都会做到点击logo,就会回到主页,应该怎么做呢,大家首先会想到,给图片加上链接就可以了 前四节的大练习大家做的怎么样?有没有难度,如果你觉着有难度没有关系,这节课,我带着大家做一下这个练习![第一步 整体布局与公共CSS定义]我们先来分析一下这个页面页面主要分5大块,顶部的Logo.导航条Nav.Banner.Content.Footer,如下图这样HTML就很容易写出来了 <div id="Logo"></div><div id="N

2天驾驭DIV+CSS!第四课(上)

其实理论都是一样的,只要你能理解并学会这节课的内容,以后再困难的导航条你都可以很应对,EASY !!! 课程开始:      前三节课,我们知道了什么是"内容块状元素和内联元素",以及XHTML+CSS布局的核心概念"盒子模型",同时又学习了一下页面布局中两种方法中的一种方法"浮动",这次我们就利用这三个概念,来制作一款,经典的导航条,别看它其貌不扬,可是网上所有的导航条都可以再它的基础上修改而来哟~,厉害吧~!其实理论都是一样的,只要你能理解并

2天驾驭DIV+CSS!第六课

如果用position来布局页面,父级元素的position属性必须为relative,而定位于父级内部某个位置的元素,最好用absolute 注:在做这节教程的时候,我又上网查了相关资料,看了大量的文章,做了大量的测试,最后总结出下面这些文字,洋洋洒洒一整篇,不过需要大家一句话一句话的看,一定要仔细喽!还有对于课程中的说的,最好一边看,一边练,不练绝对看不懂! 定位(position)布局页面说容易非常容易,只需要记住这节课最后一句话就可以了,说困难,那是相当的难理解,需要一定的耐心,不过还好

2天驾驭DIV+CSS!第四课(下)

第四课的思路就是这样的,如果吃透了这节课,那么以后什么样子的导航都很轻易作出来,如果你在和js很好的结合起来用~你就可以很自信的向老板提出加薪了!!!^_^ 上节课我们将导航条做成了下面的效果[第四步] 我们需要将上面的导航条做以下几个修改1)给上面的导航加上链接:2)链接文字大小修改为12px;3)并且规定链接样式,鼠标移上去和拿开的效果修改方法如下1)导航加链接,HTML代码如下:<div id="nav">    <ul>     <li>&l

2天驾驭DIV+CSS!第三课

目的就是为了清除蓝色方块的浮动对下面绿色方块的影响!是影响哟~是清除影响,而不是清楚蓝色方块的浮动,或者说清除蓝色方块的浮动对下面区域块产生的作用! 还记得第二课我们做的例子的效果么?最后效果是,红色方块和蓝色方块都处于一行,我们使用"Float:left",打击了块状元素的"霸道"即块状元素不允许其他元素和它处于同一行.我们将红色方块的CSS代码中加入了"Float:left;"后,红色方块终于允许蓝色方块和它处于同一行.如图:   我们换一种

JavaScript驾驭网页-CSS与DOM_javascript技巧

推荐阅读:JavaScript驾驭网页-DOM DOM是种符合万维网标准的HTML操纵方式,它能比innerHTML特性达成更多操控功能 这里有HTML代码与CSS代码 <!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <style type="text/css"> span.class