`
eagleking012
  • 浏览: 24400 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

DIV CSS 布局定位 实例 菜单导航 详解

 
阅读更多

   为什么要用Div Css可以简单的作如下解释:
   当时创造WEB的那个人也发明了用TABLE布局,当TABLE布局泛滥之后,然后他说:我创造了WEB也毁了WEB,TABLE布局会给一个网页带来大量无意义的语句难以阅读。TABLE是来干什么的,TABLE是表格,从来都不是用来布局用的,现在我们要使TABLE重新开始显示它自己的意义:表示表格数据.所以TABLE根本不应该用在网页布局上面.
    而且CSS+DIV具有以下特点和优势:
    优势:1、符合W3C标准。微软等公司均为W3C支持者。这一点是最重要的,因为这保证您的网站不会因为将来网络应用的升级而被淘汰。
         2、支持浏览器的向后兼容,也就是无论未来的浏览器大战,胜利的是IE7或者是火狐,您的网站都能很好的兼容。 
         3、搜索引擎更加友好。相对与传统的table, 采用DIV+CSS技术的网页,对于搜索引擎的收录更加友好。 
         4、样式的调整更加方便。内容和样式的分离,使页面和样式的调整变得更加方便。 现在YAHOO,MSN等国际门户网站,网易,新浪等国内门户网站,和
            主流的WEB2.0网站,均采用DIV+CSS的框架模式,更加印证了DIV+CSS是大势所趋。
         5、CSS的极大优势表现在简洁的代码,对于一个大型网站来说,可以节省大量带宽,而且众所周知,搜索引擎喜欢清洁的代码。6、表现和结构分离,
           在团队开发中更容易分工合作而减少相互关联性。

1、基本框架搭建

基本框架由“头”和“身子”组成,“头”由class为header的Div填充,“身子”由id为toolAndContent的Div组成。


这样就组成了一个上下结构的页面,“头”和“身子”肯定还有许多复杂的部分,首先描绘“头”的出基本组成:

“身子”是一个左右结构,左边是菜单,右边是内容显示页,中间还有一个隐藏控制工具,代码如:

2、布局控制

按照上面的组合,我们期望得到一个如下图的布局

但是,当我们的窗口大小发生改变时,这些Div总是不那么老实的呆在原来的位置,挨挤了就变形了,网上有很多资料都说增加div的float:left属性,或者增加不换行标记等都不能实际解决问题。

如何让头保持最小的宽度,如何让左侧菜单div在隐藏与显示时,都不影响右侧工具和内容div的位置,工具div和内容div始终保持右侧水平跟随状态呢,正确的做法是混合使用使用绝对定位和相对定位。

首先了解一下绝对定位和相对定位的作用:

1.position:relative; 如果对一个元素进行相对定位,首先它将出现在它所在的位置上。然后通过设置垂直或水平位置,让这个元素“相对于”它的原始起点进行移动

2.position:absolute; 表示绝对定位,位置将依据浏览器左上角的0点开始计算,
绝对定位使元素与文档流无关,因此不占据空间。普通文档流中其这元素的布局就像绝对定位的元素不存在时一样。它相对于最近的已定位的祖先元素。如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块。根据用户代理的不同,最初的包含块可能是画布事HTML元素。(因为绝对定位的框与文档流无关,所以它们可以覆盖页面上的其他元素并可以通过z-index来控制这些框的堆放次序。z-index的值越高,框在堆中的位置就越高。)

由此可以看出想要一个元素跟着网页中的某个元素位置不论分辨率是多少他的位置始终是针对页内的某个元素的,单纯用绝对定位是不行的。

正确的解决方法就是在元素的父级元素定义为position:relative,针对前面构造的页面框架,通过CSS来控制div的位置

3、Div + iframe + Css控制剩余高度

我们在内容中使用了一个iframe,用来动态显示用户访问的页面,如何让这个iframe的高度和宽度,能够占满除头和左侧菜单外的剩余空间呢,设置width和height为绝对值或者百分比都不能同时满足自适应窗口大小,而又不变形的要求,正确的做法是,使用Css的expression表达式,把CSS属性和Javascript脚本关联起来。这里的CSS属性可以是元素固有的属性,也可以是自定义属性。就是说CSS属性后面可以是一段Javascript表达式,CSS属性的值等于Javascript表达式计算的结果。在表达式中可以直接引用元素自身的属性和方法,也可以使用其他浏览器对象。这个表达式就好像是在这个元素的一个成员函数中一样。

结合以上布局的例子如下:

通过这两个CSS的切换,达到左侧菜单打开和隐藏时,自动改变右侧内容大小的目的,同时利用expression表达式,结合javascript获取页面窗口大小,再减去左侧div的宽度和头的高度,达到自动填满窗口的剩余空间的目的。

我们还需要结合jquery自动控制两个左侧菜单的隐藏和右侧内容的样式改变,

完整的页面效果:



需要原文件的,可以去我的资源库里面下载:http://download.csdn.net/detail/eagleking012/3627722

分享到:
评论

相关推荐

    DIV+CSS布局入门实例详解

    DIV+CSS网页布局入门实例详解,本教程通过一个实例详从最基础的东东讲解网页布局

    DIV+CSS布局:CSS浮动float属性详解

    DIV+CSS布局:CSS浮动float属性详解 不解释

    divcss详解实例

    div+css详解,实例,对于学习div css有一定的帮助。。

    div+css有实例,易学易懂

    div+css有实例,易学易懂第1 章 Web 标准布局的本质 第8 页 1.1 为什么要建立Web 标准 1.1.1 建立Web 标准的目的 1.1.2 使用Web 标准的好处 1.2 什么是Web 标准 1.3 内容、结构和表现 1.4 两种思考方式 1.5 Web 标准...

    div+css相对定位和绝对定位用法实例详解

    在用DIV+CSS控制排版过程中,定位一直被人认为是一个难点,在没有深入理解清楚定位的原理时,排出来的杂乱网页常让他们不知所措,下面的教程能让你更深入地了解CSS定位属性

    精通CSS DIV网页样式与布局.part1.rar

    3. 深入的CSS+DIV布局详解 本书用相当的篇幅重点介绍了用CSS+DIV进行网页布局的方法和技巧,配合经典的布局案例,帮助读者掌握CSS最核心的应用技术。 4. 高级的混合应用技术 真正的网页除了外观表现之外,还需要结构...

    DIV+CSS 应用祥解教程

    详细讲解了CSS+DIV的各个方面。 包括:语法、应用、代码编写、实例等,细致,实用,是一部难得的教程。

    CSS网站布局实录 (第二版)PDF版

    文本、图像、超链接、列表、菜单、网站导航、表单、数据表格、浮动布局等CSS布局控制。),智能、创造型布局思维(智慧、完美视觉艺术效果之CSS布局技巧、CSS Hack实践战略),Web技术团队倾情奉献(来自CSS布局与Web标准...

    精通CSS DIV网页样式与布局.part2.rar

    3. 深入的CSS+DIV布局详解 本书用相当的篇幅重点介绍了用CSS+DIV进行网页布局的方法和技巧,配合经典的布局案例,帮助读者掌握CSS最核心的应用技术。 4. 高级的混合应用技术 真正的网页除了外观表现之外,还需要结构...

    精通CSS DIV网页样式与布局.part3.rar

    3. 深入的CSS+DIV布局详解 本书用相当的篇幅重点介绍了用CSS+DIV进行网页布局的方法和技巧,配合经典的布局案例,帮助读者掌握CSS最核心的应用技术。 4. 高级的混合应用技术 真正的网页除了外观表现之外,还需要结构...

    CSS在固定宽高的div内实现垂直居中的实例详解

    主要介绍了CSS在固定宽高的div内实现垂直居中的实例详解,即在div内部元素相对于div垂直居中的方法,需要的朋友可以参考下

    html5 div布局与table布局详解

    本文实例为大家解析了html5 div布局与table布局,供大家参考,具体内容如下 div布局:html+css实现简单布局。 #container中height不能写成百分数,必须为具体高度。 <!DOCTYPE html> <html> <head lang=...

    多功能选项卡界面美观

    DIV CSS模板下载2 DIV CSS布局实例:用css网站布局之...3 c#操作word表格4 GridView 分页导航5 精美JavaScript...处理Asp.net Ajax框架12029,12007错误详解如何实现最基本的AJAX框架 [四天学会ajax]学习ajax教程第一...

    CSS3 box-shadow属性实例详解

    CSS3 – 给div或者文字添加阴影(盒子阴影、文本阴影的使用) CSS3定义了两种阴影:盒子阴影和文本阴影。其中盒子阴影需要IE9及其更新版本,而文本阴影需要IE10及其更新版本。下面分别介绍box-shadow阴影的使用: ...

    判断div滑动到底部的scroll实例代码

    实例如下所示: <!DOCTYPE html> <html> <head> <title>判断div滑到底部的代码</title> [removed][removed] <style type="text/css"> #scrollTest{ width:100px; height:...

    javascript瀑布流布局实现方法详解

    本文实例讲述了javascript瀑布流布局实现方法。分享给大家供大家参考,具体如下: html结构: <div id=waterfall> <div class=mod-box> <div class=mod-img>...</div> </div> <div class=mod-box> <div class=...

    详解css中的display属性

    在一般的CSS布局制作时候,我们常常会用到display对应值有block、none、inline这三个值。下面我们来分别来认识和学习什么时候用什么值。这里通过CSS display知识加实例讲解方法来学习和了解DIV CSS display。

    html/css中float浮动的用法实例详解

    1、我们先建两个div盒子,设置高度、宽度和背景颜色; 最开始两个盒子在网页上的位置如下:  然后我们将红色盒子浮动到右边  然后我们会发现红色盒子浮动到了右边,但是蓝色盒子就直接上移到了原先红色盒子的...

    CSS中三角形的绘制与巧妙应用实例详解

    我们可以通过将一个div容器的宽和高都设置为0,然后设置容器的边框来实现。 .box { height: 0; width: 0; border-color: wheat skyblue pink rgb(154, 121, 230); border-style: solid; border-widt

Global site tag (gtag.js) - Google Analytics