css中一些属性设置成 负值能够获得不同的效果。css
如:浏览器
首先定义一下margin。
margin定义盒模型的外边距dom
固然一些IE低端浏览器可能会有不同的表现 >///< 没仔细测过code
日常作一个icon 16x16须要跟文案的行文字水平剧中对齐,须要用到vertical-align: middleit
固然这个时候要给icon配上display:inline-block,这样能够给icon设置宽高。
可是 vertical-align: middle 的时候icon下方会有4px的 baseline空隙,这个时候看起来会对不齐。具体能够看[vertical-align]的定义。io
因此这个时候须要使用 margin 负值来调节上下偏移。ast
这个我挺喜欢,有的时候由于浮动元素的宽度问题,致使没必要要的换行。能够用margin 负值来搞掂。float
flaoat:left; margin-right:-10px;
另外在ul>li 的 结构中也能够用margin 负值来阻止换行,
好比你为了实现float的li间距,以及ul两侧的空隙相等,这个时候若是外围dom两侧自己有padding了。
那么li中的 margin-right 属性就会给右侧多出一些空隙,
这个时候 ul 弄一个 margin-right:负值 会有神奇的效果。margin