本文为大家分享CSS3定位和浮动的基础概念,与使用方法,供大家参考,具体内容如下

一、定位

1、 css定位:

改变元素在页面上的位置

2、 css定位机制:

普通流:

浮动:

绝对布局:

3、 css定位的属性:

position 把元素放在一个静态的,相对的,绝对的,或者固定的位置中
top/left/right/botom 元素向上/左/右/下的偏移量
overflow 设置元素溢出其区域发生的事情
clip 设置元素显示的形状
vertical-align 设置元素显示的对其方式
z-index 设置元素的堆叠顺序/用来设置元素的堆叠顺序,越大越在上方/

position的属性
static 静态的(默认)
relative 相对布局(默认的)
absolute 绝对布局 (和其他的标签无关联)
fixed 固定的(不会随着页面的滚动而动)

实例代码:

CSS Code复制内容到剪贴板
  1. <body>
  2. <div id="position1"></div>
  3. <div id="position2"></div>
  4. <script>
  5. for (var i=0;i<100;i++){
  6. document.write(i+"<br/>")
  7. }
  8. </script>
  9. </body>
  10. #position1{
  11. width: 100px;
  12. height: 100px;
  13. background-color: blue;
  14. position: relative;
  15. left: 20px;
  16. top: 20px;
  17. /*用来设置元素的堆叠顺序,越大越在上方*/
  18. z-index: 2;
  19. }#position2{
  20. width: 100px;
  21. height: 100px;
  22. background-color: red;
  23. position: relative;
  24. left: 30px;
  25. top: 10px;
  26. z-index: 1;
  27. }

二、浮动

float属性可用的值:
left/right/none/inherit: 向左、右,不浮动,从父级继承。
* float

1.浮动后,脱离正常流,在浮动流中排列。任何元素都是作为块元素来显示,可设置宽高,内容撑开宽度。
2.很多浮动块在一起的时候,他们总是找与自己最近的、浮动方向相同的块来确定自己的位置,如果被迫换行,则以这个最近的元素的高度为基准起新行

clear属性: 去掉浮动属性(包括继承来的)
意思和上面对应的一样

需要清浮动的情况:

子标签浮动后,父标签的高度无法被撑开,所以需要清浮动;
新加入的标签,希望不受之前浮动元素的影响,则需要清浮动;

1.clear:both; height:0; overflow:hidden;
2.overflow:hidden; 触发layout 常用于清楚内浮动;
3.after 伪对象:给当前对象设置
.aa:after {content:”.”}
.aa {display:inline-block;}
.aa {display:block;}
想办法 触发ie6的layout渲染机制,靠运气解决了很多bug,zoom:1可以触发!!!
inline-block对内块 对外行;
4.父标签一起浮动;
5.position:absolute;清除浮动

display
display:block 以块元素显示;
display:none 内容消失,不占空间;
display:inline 以行内元素显示,可解决IE6的双倍BUG;
display:inline-block 对内块,对外行。

visibility:none
隐藏,但是依旧占用空间,影响布局

以上就是关于CSS3定位和浮动的全部内容,希望对大家的学习有所帮助。

CSS3定位和浮动详解的更多相关文章

  1. CSS3的@keyframes用法详解:

    CSS3的@keyframes用法详解:此属性与animation属性是密切相关的,关于animation属性可以参阅CSS3的animation属性用法详解一章节. 一.基本知识:keyframes ...

  2. css3(border-radius)边框圆角详解(转)

    css3(border-radius)边框圆角详解 (2014-05-19 16:16:29) 转载▼ 标签: divcss html it css3 分类: 网页技术 传统的圆角生成方案,必须使用多 ...

  3. css3系列之transform详解translate

    translate translate这个参数的,是transform 身上的,那么它有什么用呢? 其实他的作用很简单,就是平移,参考自己的位置来平移 translate() translateX() ...

  4. 【二次元的CSS】—— 用 DIV + CSS3 画咸蛋超人(详解步骤)

    [二次元的CSS]—— 用 DIV + CSS3 画咸蛋超人(详解步骤) 2016-05-17 HTML5cn 仅仅使用div作为身体的布局,用css3的各种transform和圆角属性来绘制各部位的 ...

  5. CSS定位属性Position详解

    CSS中最常用的布局类属性,一个是Float(CSS浮动属性Float详解),另一个就是CSS定位属性Position. 1. position:static 所有元素的默认定位都是:position ...

  6. 第98天:CSS3中transform变换详解

    transform变换详解 本文主要介绍变形transform. Transform字面上就是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放sc ...

  7. CSS3 基础(1)——选择器详解

    CSS3选择器详解 一. 属性选择器 在CSS3中,追加了三个属性选择器分别为:[att*=val].[att^=val]和[att$=val],使得属性选择器有了通配符的概念. 选择器 示例 描述 ...

  8. 第97天:CSS3渐变和过渡详解

    一.渐变 渐变是CSS3当中比较丰富多彩的一个特性,通过渐变我们可以实现许多炫丽的效果,有效的减少图片的使用数量,并且具有很强的适应性和可扩展性. 可分为线性渐变.径向渐变 1. 线性渐变 (grad ...

  9. CSS系列 (05):浮动详解

    浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止.由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样. -- W3C 文字环绕 float可以 ...

随机推荐

  1. 东大OJ-1391-Big big Power

    题目描述 Calculate the power num a^(b^c) mod 1e9+7 输入 Multiple test cases,each case has three integers a ...

  2. 【JavaEE企业应用实战学习记录】struts配置文件详细解析

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-/ ...

  3. 第一章:java语言概述与开发环境

    前言: 1.程序是什么? 程序是对现实世界的数字化模拟! 2.编程语言是工具,程序的作用就是解决问题!  重要的思路! 该知识点能解决什么问题?   1.语言特性:单继承.多接口!       纯面向 ...

  4. mysql explain知道

     

  5. TouchSlop与VelocityTracker认识

    TouchSlop是处理触摸事件中的一个常量,被系统认为滑动和点击事件的临界点.理 解这个touchSlop是一个滑动距离值的常量,也就是说当我们手触摸在屏幕上滑动时,如果滑动距离没有超过touchS ...

  6. html-div中内容自动换行

    <div style='width: 100px;display:block;word-break: break-all;word-wrap: break-word;'> 内容超出div宽 ...

  7. js-新窗口打开页面

    window.open(basePath+"/web/homeIndex?code="+code); 1.超链接<a href="http://www.xxx.ne ...

  8. Java字符串面试(二)

    先看下面2个程序 public static void main(String[] args) { String a = "a1"; String b = "a" ...

  9. iOS中如何选择delegate、通知、KVO(以及三者的区别)

    转载自:http://blog.csdn.net/dqjyong/article/details/7685933 在开发IOS应用的时候,我们会经常遇到一个常见的问题:在不过分耦合的前提下,contr ...

  10. 【转】wait,notify,notifyAll,join,yield,sleep的区别和联系

    1.  Thread.sleep(long) 和Thread.yield()都是Thread类的静态方法,在调用的时候都是Thread.sleep(long)/Thread.yield()的方式进行调 ...