关于CSS中的float和position

postion:relative是子块级元素面向父级元素的相对定位,定位关键字使用left/right/top/bottom。兄弟块元素之间相对进行定位,但是position移动后,原位置依然保留。而且随后的兄弟块元素定位基于被移走前的位置。

float:right/left是子块级元素流集合面向父级元素的定位,定位的关键词使用margin/padding。兄弟块元素之间进行相对的定位均基于移动后的新位置进行重新渲染,可以重叠,原位置被清空。

二者之中最大的差别就是位置保留。

float定位:

<style>

*{border:1px solid #eee;}

body{

border-color:#09f;

}

ul{list-style:none;}

li{float:left;}

#li1{width:200px;height:200px;border-color:red;}

#li2{width:200px;height:150px;border-color:green;}

#li3{width:200px;height:100px;border-color:blue;}

</style>

<ul id=#id>

<li id=li1>li1</li>

<li id=li2>li2</li>

<li id=li3>li3</li>

</ul>

position:relative定位:

<style>

*{border:1px solid #eee;}

body{

border-color:#09f;

}

ul{list-style:none;width:800px;height:400px;margin:0 auto; border-color:black;}

li{position:relative;}

#li1{width:200px;height:200px;border-color:red;top:20px;}

#li2{width:200px;height:150px;border-color:green;}

#li3{width:200px;height:100px;border-color:blue;}

</style>

<ul id=#id>

<li id=li1>li1</li>

<li id=li2>li2</li>

<li id=li3>li3</li>

</ul>

分别运行,查看一下运行效果。

时间: 2024-10-09 01:40:59

关于CSS中的float和position的相关文章

[译] 关于CSS中的float和position

原文 http://learn.shayhowe.com/advanced-html-css/detailed-css-positioning 当构建页面排版时,有不同的方法可以使用.使用哪一种方法取决于具体页面的排版要求,在不同的情况下,某些方法可能好过于其他的方法. 比如,可以使用若干个浮动元素来构建一个整洁简洁的页面排版.或者,如果需要更复杂的排版要求,可以考略使用其他方法,比如使用相对定位和绝对定位. 在这篇文章中,我们首先要讨论元素浮动:然后,我们要讨论如何使用x,y和z轴控制元素的位

CSS中盒子模型和position(一)

今天遇到几个css中的重要的知识点,记得这些都是以前看过的:margin.padding.border和position.可是用起来还是有很多的问题,以前自己看过去总是懒得记录,等到用起来了都不知道自己记忆中的那些是在那里看到的,找起来特别的麻烦,还是老老实实的写博客写下来吧!本着既然打算写成博客就费点时间写点自己觉得有质量的,要不对不起看我博客的人更对不起自己,有些事情还是要告诉自己,不能急得花点时间,就像学这些技术.踏踏实实一点一点积累,还是要舍得花时间. 本人大四即将毕业生一枚,总是觉得有

css中的“float: right”出现靠右换行的现象

在网页制作过程中,经常会碰到使用css中的“float: right”出现靠右换行的现象 现将我在使用过程中的一点小技巧分享给大家. 1.float: right的使用用法:使用html代码<span style="float: right">*****</SPAN>,其中*****就是你想靠右的内容,比如一个日期:{date1},如果想让此元素靠右,则应该写:<span style="float:right">{date1}&l

Day50:CSS属性(float、position)

一.float属性 1.基本属性 先来了解一下block元素和inline元素在文档流中的排列方式. block元素通常被现实为独立的一块,独占一行,多个block元素会各自新起一行,默认block元素宽度自动填满其父元素宽度.block元素可以设置width.height.margin.padding属性: inline元素不会独占一行,多个相邻的行内元素会排列在同一行里,直到一行排列不下,才会新换一行,其宽度随元素的内容而变化.inline元素设置width.height属性无效 常见的块级

css中的定位属性position

同样的也是上课的时候发现学生难以理解的一些问题拿出来记录一下,希望帮助初学者. 在css中定位属性position的运用在页面中是很常用的,特别是一些结合js来实现的一些特效经常会用到定位属性,比如鼠标滑过显示被隐藏的盒子, banner的切换,还有之前写的jquery实现京东商品分类导航的类似这样的布局也是要结合定位属性来实现,但是上一次着重只写了jquery. 那么这次我想将定位属性的运用拿来说一下. 定位属性position常用的取值:relative/absolute/fixed;一般配

CSS中的float属性

在上一节中提到过行内块元素(inline-block),display设置为inline-block后, 元素可以设置宽度和高度,又能以行内形式显示,即水平排列,而不是像块级元素一样 从上到下排列.这一点很好地解决了页面的布局问题.      inline-block不是唯一,还有一个float浮动属性也能够到达类似的效果.float分为左浮left和右浮right,会让元素脱离文档流,且子级浮动会导致父级高度 塌陷(父级可使用overflow:hidden属性恢复自身高度).下面举例说明flo

CSS中display/float/position属性值的相互影响

有3个属性和布局以及box的创建有关:'display', 'position' 和 'float',彼此交互作用如下: 如果'display'值为'none',则'position' 和 'float'无作用.这种情况下,不生成box.否则,如果'position'值为'absolute' 或 'fixed', box被绝对定位,'float'的计算值为'none',而'display'的值按下表设定.box的位置将由'top', 'right', 'bottom' 和 'left' 属性及其

CSS中常见的位置(position)属性

常用的位置属性列表: position(top.bottom.left.right) .overflow.z-index position用法: 值 描述 relative 相对定位,原位置仍占用空间,相对于其正常位置进行定位. 因此,"left:20" 会向元素的 LEFT 位置添加 20 像素. absolute 绝对定位,不保留原空间,相对于 static 定位以外的第一个父元素进行定位. 元素的位置通过 "left", "top", &q

关于css中浮动float的最好理解!

<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <div style="border:3px solid silver; width:300px;"> <div id="container" style=&