postion:relative是子块级元素面向父级元素的相对定位,定位关键字使用left/right/top/bottom。兄弟块元素之间相对进行定位,但是position移动后,原位置依然保留。而且随后的兄弟块元素定位基于被移走前的位置。
float:right/left是子块级元素流集合面向父级元素的定位,定位的关键词使用margin/padding。兄弟块元素之间进行相对的定位均基于移动后的新位置进行重新渲染,可以重叠,原位置被清空。
二者之中最大的差别就是位置保留。
人们也就利用这种差异,可以做出CSS代码的滑动门菜单。
hover时取当前元素为保留位置,定义一个relative时,没有hover时使用float清空保留位置。
<!--<style>
*{border:1px solid #eee;}
body{
border-color:#09f;
}
ul{list-style:none;width:800px;height:600px;margin:0 auto;padding:10px;}
li{float:left;}
#li1{width:200px;height:200px;border-color:red;}
#li2{width:200px;height:150px;border-color:green;margin-left:-20px;}
#li3{width:200px;height:100px;border-color:blue;margin-left:-20px;}
</style>-->
<!--<style>
*{border:1px solid #eee;}
body{
border-color:#09f;
}
ul{list-style:none;width:800px;height:600px;margin:0 auto;}
li{position:relative;}
#li1{width:200px;height:200px;border-color:red;top:10px;}
#li2{width:200px;height:150px;border-color:green;top:-192px;left:180px;}
#li3{width:200px;height:100px;border-color:blue;top:-344px;left:360px;}
</style>-->
<style>
*{border:1px solid #eee;}
body{
border-color:#09f;
}
#ul{list-style:none;width:800px;height:600px;margin:0 auto;padding:20px;}
#li1{width:200px;height:200px;border-color:red;position:relative;}
#li2{width:200px;height:150px;border-color:green;float:left;margin-left:-20px;margin-top:-202px;}
#li3{width:200px;height:100px;border-color:blue;float:left;margin-left:20px;margin-top:-202px;}
</style>
<ul id=#id>
<li id=li1>li1</li>
<li id=li2>li2</li>
<li id=li3>li3</li>
</ul>
分享到:
相关推荐
" Float与Position属性" ...Float 和 Position 属性是 CSS 中两个非常重要的概念,它们可以帮助开发者建立复杂的布局,实现多年的梦想。但是,使用这些属性需要非常小心,因为它们可以对布局产生非常大的影响。
浮动(float)和定位(position)是CSS布局中的两个关键概念,它们在网页设计中扮演着重要角色,用于控制元素的位置和排列方式。 一、浮动(float) 浮动最初设计的目的是为了实现文本环绕图片的效果,但后来发展成为一种...
本文将深入探讨两种主要的定位方式:float浮动和position定位。 一、float浮动 1. **文档流**:在HTML中,元素默认按照文档流进行排列,即从左至右,从上至下。**脱离文档流**意味着元素不再遵循常规布局,而是...
在网页设计中,CSS(Cascading Style Sheets)是用于控制网页元素样式和布局的关键...随着现代CSS布局技术如Flexbox和Grid的发展,虽然在某些场景下使用浮动和定位的需求减少,但它们仍然是理解和解决布局问题的基础。
`position`属性用于定义元素的定位模式,而`top`、`bottom`、`left`和`right`属性则用于精确调整定位元素的位置。 **4.2 position属性的常用值** - **static**: 默认值,元素按照正常文档流进行布局。 - **...
在CSS布局中,`position`和`float`是两个至关重要的属性,它们分别提供了不同的定位方式,用于控制网页元素在页面上的布局。本篇文章将详细阐述这两个概念以及它们的使用方法。 首先,我们来了解`position`定位。`...
标题中的“CSS布局详解浮动属性Float”指的是CSS布局中的一项重要技术——浮动(Float),它在网页设计中扮演着关键角色。描述虽然未提供具体内容,但可以推测文章将深入探讨浮动属性及其在创建网页布局中的应用。 ...
### div的position属性详解 ...总结而言,`div`的`position`属性提供了多种布局方式,包括流动模型、浮动模型以及层模型中的绝对定位、相对定位和固定定位,它们分别适用于不同的场景,可以根据实际需求灵活选择使用。
在CSS中,元素的浮动和定位是两种关键的技术,用于创建复杂的网页布局。在这个名为“蓝色多瑙河”的浪漫式网页布局案例中,它们被巧妙地结合使用以实现3行2列的布局。这个案例源自喻浩的《DIV+CSS网页样式与布局从...
有3个属性和布局以及box的创建有关:’display’, ‘position’ 和 ‘float’,彼此交互作用如下: 如果’display’值为’none’,则’position’ 和 ‘float’无作用。这种情况下,不生成box。 否则,如果’...
相信很多人都有这样的问题,在页面布局中float和position:...而position,定位,是不受约束的,这个貌似都谈不上布局了,一般要是做什么特殊的定位或者浮动层的时候,可以考虑使用。正常页面布局,我个人建议用FLOAT
在CSS布局中,绝对定位(absolute)和浮动定位(float)是两种常用的技术,它们各自具有独特的特性和应用场景。在创建多栏布局时,这两者都可以发挥重要作用。 **1. 绝对定位(Absolute Positioning)** 绝对定位...
举例来说,下面的代码展示了浮动和定位的应用: ```html .float { width: 40px; height: 40px; background: blue; float: left; } p { display: inline-block; width: 100px; height: 100px; ...
首先,我们需要理解浮动(Float)和绝对定位(Absolute Positioning)的概念。浮动是一种布局技术,常用于创建多列布局或使文本环绕图像。当一个元素浮动后,它会从当前的流中移出,使得后续的元素可以移动到它的...
通过使用 position 属性,可以将元素定位到特定的位置,以实现布局和设计的需求。 二、position 属性的五种值 1. position: static;默认值,无需声明 position: static 是所有元素的默认值,不需要特别声明。...
例如,为了创建一个带有页头和页脚的三栏布局,可以先使用绝对定位将页面主体部分居中,并创建分栏,然后利用浮动来处理页头和页脚。页头通常不需要定位,页脚则可以使用清除浮动的方法来确保它始终位于页面底部。 ...
通过使用 `position: relative` 和 `top`, `bottom`, `left`, `right` 属性,我们可以调整元素的位置。这在需要微调元素位置或者为绝对定位提供参照时非常有用。例如,一个绝对定位的子元素可以使用相对定位的父元素...
在某些情况下,绝对定位和浮动可以结合使用,以克服各自单独使用的局限性。例如,可以先使用浮动创建基本的布局,然后对特定元素使用绝对定位进行微调。这种方式在处理固定大小的侧边栏或需要精确控制的元素时尤其...