首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >顶部和左侧与边距-顶部和边距-左侧

顶部和左侧与边距-顶部和边距-左侧
EN

Stack Overflow用户
提问于 2011-06-21 09:28:46
回答 3查看 16.4K关注 0票数 19

使用top和left属性以及top和left边距有什么区别?

我知道top和left通常用在position:absolute situation中,但我还是想知道有没有什么主要的区别。

例如:

代码语言:javascript
运行
复制
position:absolute;
top:5px;
left:5px;

-vs-

代码语言:javascript
运行
复制
margin-top:5px;
margin-left:5px;
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-21 09:56:00

好吧,主要的区别是绝对定位的元素被从内容流中拉出。

但是对于相对定位的元素,周围的内容可能会变得模糊。

另一方面,边距被添加到元素的大小,而周围的内容相应地流动。

请参阅有一些不同之处的this sample fiddle

当然,在某些情况下,两者都会产生相同的结果,但在正常情况下,这两种方法不能简单地互换或比较。

票数 26
EN

Stack Overflow用户

发布于 2011-06-21 09:53:54

边距描述方框和相邻方框之间的间距。相对定位的框(即正常流程的一部分)将在它们之间保持足够的空间,以满足每个框的“边际”要求(称为“边际折叠”)。

另一方面,topleft是位置属性,它们指定盒子的位置;对于绝对定位的盒子,其值是相对于最近的绝对定位的包含盒子。top/left/bottom/right属性指定框的各个边的位置,包括边距。

简而言之,这两者是完全不同的概念。对于正常流动的长方体,应该使用margin来控制相邻长方体之间的间距。

票数 5
EN

Stack Overflow用户

发布于 2011-06-21 10:28:36

A存在语义上的差异。像top这样的盒子偏移量指定了盒子的边缘(下图中的虚线边缘)与参考边缘的偏移距离(对于绝对定位的元素,这是盒子包含块的顶端边缘)。边距属性(如margin-top )指定框的边距区域的宽度(下图中虚线边缘和实心边缘之间的距离TM )。

B topleft仅适用于定位的元素( position设置为static以外的任何值的元素),而margin-topmargin-left适用于除表格显示类型不是表格标题、表格和内联表格之外的所有元素。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6419411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档