• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >CSS > 绝对定位(absolute)和浮动定位(float)分析

绝对定位(absolute)和浮动定位(float)分析

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-08-06

本文主要包含绝对定位,浮动定位等相关知识,佚名 希望在学习及工作中可以帮助到您

在CSS中,实现分栏布局有两种方法。第一种方法是使用四种CSS定位选项(absolute 、static、relative和fixed)中的绝对定位(absolute positioning),它可以将文档中的某个元素从其原本位置上移除,并重新定位在期望的任何地点之上。第二种则是使用CSS中的浮动(float)概念。

绝对定位或浮动都能够用来实现分栏效果。二者可以独立使用,也可以结合在一起,相辅相成。

1、绝对定位

绝对定位的优势在于,我们可以丝毫不差地精确控制任何元素的位置—这里面没有什么需要猜测或者运气的成分。由于应用了绝对定位的元素被不留痕迹地从常规文档流中完全移除,所以它也不会为其他元素带来任何的影响。

那么让我们试一试用绝对定位如何实现下面的布局。

 

幸好,在绝对定位模型中有个极为有用的特性,那就是:若某个绝对定位元素的容器也被定位过,那么该元素指定的top和left值将不会基于文档的根元素html(也就是浏览器窗口的左上角)计算,而是会基于其容器的左上角计算这个偏移量。换句话说,也就是:被定位过的容器将扮演其中所有元素绝对定位起始点的角色。

所以,利用这个特性,我们给A、B、C栏的外部加上一个容器D,如下图:

 

但是,我们常用的布局并没有这么简单,除了三栏之外,我们还需要一个页头和一个页脚,如下图:

 

如果我们一定要采用绝对定位的话,那么必须预先知道这三栏中每一栏的高度,然后再根据其中最高的一栏定位页脚。若是任意一栏中的文本长度无法确定的话,除了使用JavaScript,我们也只能放弃绝对定位的念头,转而投入到浮动布局的怀抱。

2、浮动

浮动的本意是要将插入到文章中的图片向左或者向右浮动,使图片下方的文字自动环绕在它的周围,使图片的左边或者右边不会出现一大块的留白。

浮动的语法虽然简单,但却不那么容易掌握,下面让我们举例说明如何用浮动来进行布局。同样,我们要实现一个带页脚的三栏布局。如下图:

 

1、设定E的宽度,让E居中

2、设定A、B、C的宽度,将A、B、C分别向左浮动

3、给页脚设置clear属性

需要说明的是,浮动布局依然遵循常规文档流,所以与绝对定位相比,浮动定位时HTML源文件中元素声明的位置显得格外重要。 当然,解决这个问题的最简单的方法就是在源文件中交换左栏和右栏的声明次序,也有方法不用交换各栏的次序也可以实现同样的布局,但是,这就要用到一种比较晦涩的使用负边距值的方法。一般情况下,人们十有八九会选择交换源文件中左中两栏的声明次序。

您可能想查找下面的文章:

  • 元素绝对定位以后设置了高宽,a标签不能点击的原因及解决方法
  • 有关绝对定位的全面理解
  • CSS绝对定位元素left设为50%实现水平居中
  • 绝对定位的元素在ie6下不显示隐藏了的有效解决方法
  • IE7中绝对定位元素之间的遮盖问题示例探讨
  • 将一个绝对定位的div水平垂直居中对齐
  • css教程之绝对定位使用详解
  • 使用绝对定位+负外边距让DIV层水平垂直居中页面
  • 通过绝对定位实现div重叠实例代码
  • 瀑布流布局的两种实现方式:传统多列浮动和绝对定位布局

相关文章

  • 2017-08-06利用HTML+CSS制作左上角卷角效果的网页的方法
  • 2017-08-06CSS计数器counter()的用法简介
  • 2017-08-06CSS网页设计 把HTML标记分类
  • 2017-08-06html5+css3之CSS中的布局与Header的实现
  • 2017-08-06网页布局之响应式设计简明指南
  • 2017-08-06使用CSS实现小三角形效果【附实例】
  • 2017-08-06框架边框与页面内容的垂直边距marginheight
  • 2017-08-06纯CSS无表达式实现未知尺寸图片等比缩放(支持IE7及以上)
  • 2017-08-06为平板电脑打造完美的网站页面的方法(图文教程)
  • 2017-08-06CSS3使用transition实现的鼠标悬停淡入淡出

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • css3中新增的样式使用示例附效果图
    • 详解css中的float
    • css网站布局实录学习笔记第三部分网页布局与定位
    • 发现两个有趣的CSS3动画效果
    • css优先级计算方法(推荐)
    • margin隐藏最后的分割线无需循环输出判断是否到结尾
    • CSS word-wrap同word-break的区别
    • 什么是CSS Sprites(图片合并)技术 图文介绍
    • css 兼容ie6,ie7,ff的fixed,元素上下端固定定位方法
    • CSS 控制页面样式的4种方式和优先级问题

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有