负边距在布局中的使用(负外边距)

yumo6665个月前 (08-05)技术文章36

负边距即margin属性的值设为负值,在CSS布局中时一个很有用的技巧。值为正的场景很常见,大家都很熟悉其表现

当margin-top、margin-left为负值的时候,会把元素上移、左移,同时文档流中的位置也发生相应变化,这点与position:relative的元素设置top、left后元素还占据原来位置不同

当margin-bottom、margin-right设为负值的时候,元素本身没有位置变化,后面的元素会下移、右移

看几个应用场景

1.绝对定位居中的应用

效果如下:

2、float元素

负边距对float元素的影响也是按照上面说的,不过有其特殊性,我们看个例子就很清楚了




有三个div的宽度之和是300px,大于280px,一行排不满,如果第三个div改成下图:

就可以显示在一行,如下图:

3、带有右边距的浮动子元素列表

看到这种效果你第一想法是什么?会不会是子元素设置margin-right,在遍历的时候nth-child(3n)还要设置为0,看看利用上面知识我们可以怎样处理。

没有设置nth-child(3n)的边距为0,是通过负边距使父元素“变大”。

切图网(qietu.com)是一家专门从事web前端开发的公司,专注we前端开发,关注用户体验,欢迎订阅微信公众号:qietuwang

相关文章

浅谈position中absolute和relative

CSS position属性中absolute和relative很容易让人弄混,基本的概念什么着,你去参考W3C,就不啰嗦了--------------------------------------...

CSS box-sizing 属性详解(css中box属性有哪些)

box-sizing 是 CSS 的一个非常重要的属性。CSS 的 box-sizing 属性用于控制元素尺寸的计算方式,决定了元素的宽度( width )和高度( height )是否包含内边距(...

探索CSS position属性(css的position的属性有哪些)

提示:点击上方"蓝色字体"↑ 可以订阅噢!摘要 51RGB官方微信position是CSS中非常重要的一个属性,通过position属性,我们可以让元素相对于其正常位置,父元素或者浏览器窗口进行偏移。...

CSS知识点总结(css知识点思维导图)

CSS(cascading style sheet)层叠样式表语言,用来专门修饰HTML的。有三种方式将CSS嵌入html中。第一种:内联定义。任何一个html标签都可以指定style属性,在标签的s...

使用这些不太常用的CSS属性,布局效率上又提高了一个层次

有很多CSS属性,有些人不了解,或者他们了解它们,但是忘记在需要时使用它们。其实,有时候我们用 JavaScript 来实某些交互,CSS 一个属性就能搞定了,这可以大大节约我们编码的时间。作为前端开...