首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在文本元素上使用页边距比在布局元素上使用页边距好吗?

问在文本元素上使用页边距比在布局元素上使用页边距好吗?
EN

Stack Overflow用户
提问于 2010-11-11 19:02:30
回答 3查看 149关注 0票数 1

我不得不在一个别人写的项目上工作,他们写网站的方式一切都是用利润率,正负利润率来定位的。

我只对文本元素使用页边距,比如<p>或<h1>标签。

使用填充在我的div构建块中对内容进行间隔。

当在div上使用空格来尝试控制它们的间距时,我遇到了很多问题。

所以我的问题是:

最好是只在文本元素上使用边距,并在主要构建块上使用填充,除非在特定情况下使用边距更有意义?

我对其他人对差额属性及其用途的看法很感兴趣。

它有没有引起其他问题?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-11-11 19:09:47

CSS margin属性应该用来设置框之间的间距,而不是用来定位某个框中的文本(内容),也不应该用来改变框的位置。对于这两个活动中的每一个都有特定的属性:padding和position (带有left、right、top和bottom)。

决定您需要哪些属性相当简单。让我们来看一些案例:

答:我在一个父类中有3列,我希望它们之间有一些空格。

这将需要使用margin,因为您显然需要元素之间的空间,而不是元素内部的空间。

B.每列都有边框和文本内容,但文本内容从边框开始。我做什么好?

您可以应用一些padding。即使你没有边框并且想要定位文本内容,你仍然应用填充,而不是边距!

C.我想做一些很酷的未来主义布局,让方框彼此不对齐。它们中的一些甚至应该重叠!

在这种情况下,显然不是间距的问题,而是定位的问题,所以您应该使用position属性。不要将页边距应用于元素之间的间隔,而是相对于父元素(如果使用position: relative,则将它们定位到默认位置)。

提示:为了更容易决定您是否需要边距或填充,请始终考虑如果您在所有元素上都有边框,您会做什么。

必读:http://www.w3.org/TR/CSS2/box.html

票数 3
EN

Stack Overflow用户

发布于 2010-11-11 19:11:15

边距用于在两个元素之间创建空间,而填充用于将元素的内容与其边缘隔开。

更新:我使用破折号(-)来表示空格。

所以这是保证金...

-|元素|--|元素|-

这是padding..。

-Element-||-Element-

这是空白处和填充物。

-|-元素-|--|-元素-|-

所以问题是,你想用什么.答案是视情况而定。如果你对元素有一个可见的边缘,无论是背景颜色还是边框,填充都不会在元素之间产生可见的间隙,所以你必须使用边距来分隔它们(即防止边缘接触)。

所以本质上,它们做了不同的事情,你应该使用空格来间隔元素,并使用填充来在元素的边缘和它的内容之间创建一个间隙。

票数 2
EN

Stack Overflow用户

发布于 2010-11-11 19:23:05

回答你的问题:不。您的主要构建块可能会使用浮点数进行布局,并且使用负边距可以保持合理的源代码顺序-请参阅http://www.alistapart.com/articles/negativemargins/

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

https://stackoverflow.com/questions/4153707

复制
相关文章

相似问题

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