在CSS中使用负边距或填充是不好的做法

Jas*_*vis 36 css

以下图中我正在处理的项目为例...蓝色背景是一个DIV,它位于另一个DIV中,它将所有侧边栏接触部分包裹在一起.为了获得Blue BG DIV圆形边界而没有间隙,因为父母边缘/填充我不得不使用负边距
margin: -9px -2px 8px -6px;

所以问题是,使用负边距或填充是不好的做法?

在此输入图像描述

Dav*_*mas 41

没有; 这是不错的做法,只要你知道你使用负边距的事实,并且这必然会"拉动"/"移动"元素从其他"正常"的位置.

你为什么要担心这个?

  • 我问的主要原因是我,因为我不想编写整个网站或者使用它们,然后发现这样做并不好,只是想确保 (8认同)
  • @Canvas您应该担心避免不良做法,因为很可能有充分的理由将某些东西称为“不良做法”。虽然,在这种情况下没有。 (7认同)

小智 8

负边距是否定标题元素内部填充的好方法.我没有发现使用负边距的负面结果(原谅双关语).例如:

<div style="padding:10px;border:1px solid blue;">
 <div style="margin:-10px -10px 10px -10px;backgorund-color:yellow;">Full width heading</div>
 The content of the div which is now padded in by ten pixels.
<div>
Run Code Online (Sandbox Code Playgroud)

当我第一次发现它们时,我担心负边距,但发现它们非常有用的是如此多的布局区域 - 实际上减少了div数并清理了布局代码.