css中关于margin-top为负值,为什么没有上移。

.box1{display:inline-block;width:200px;height:100px;background-color:gold;margin-top:... .box1{
display: inline-block;
width: 200px;
height: 100px;
background-color: gold;
margin-top: -100px;
margin-left: -100px;
}
.box2{
display: inline-block;
width: 200px;
height: 100px;
background-color: green;
}

<div class='box1'></div>
<div class='box2'></div>
box1为什么没有上移,只是左移100px?
如果把box2里加个margin-top:-100px;box1与box2同时上移。
展开
 我来答
网海1书生
科技发烧友

2018-06-25 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部
原则上,行内元素(inline)是不能够设置宽高(width/height)、上下内边距(padding-top/padding-bottom)和上下外边距(margin-top/margin-bottom),因为同一行的所有行内元素在纵向的位置是一个整体,设置其中某个元素的上下边距,则整行都会跟随变化,当超出边框范围时(比如margin-top设为负值)则无效(除非行内的所有元素都设为同样的数值)。
当然,行内块级元素(inline-block)是可以设置宽高(width/height)的,但在上下边距的问题上仍然遵循行内元素的原则。
如果把display改为block,你会发现设为margin-top:-100px的box1立刻就上移了。
追问
为什么如果把box2里加个margin-top:-100px;box1与box2同时上移
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式