网页制作 
首页 > 网页制作 > 浏览文章

CSS3定位和浮动详解

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

本文为大家分享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.   
  11. #position1{   
  12.     width: 100px;   
  13.     height: 100px;   
  14.     background-color: blue;   
  15.     position: relative;   
  16.     left: 20px;   
  17.     top: 20px;   
  18.     /*用来设置元素的堆叠顺序,越大越在上方*/  
  19.     z-index: 2;   
  20. }#position2{   
  21.     width: 100px;   
  22.     height: 100px;   
  23.     background-color: red;   
  24.     position: relative;   
  25.     left: 30px;   
  26.     top: 10px;   
  27.     z-index: 1;   
  28. }   
  29.   

二、浮动

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定位和浮动的全部内容,希望对大家的学习有所帮助。

上一篇:浅析CSS中calc()的使用
下一篇:CSS3制作气泡对话框的实例教程
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。