width: 100%和width: auto有什么区别

一、写在前面

块级元素有宽度width, 行内元素没有宽度width,所以只能在块级元素上验证两者区别
设置当前盒模型是IE盒模型

二、具体例子
2.1、设置children元素margin: 0
此时设置width:100%和width: auto是没有什么区别的。
width: 100%和width: auto有什么区别_第1张图片
2.2、设置children元素margin: 0 30px
width: 100%和width: auto有什么区别_第2张图片

如果设置children元素margin: 0 30px时,width: 100%的元素宽度不变, 位置向左偏移30px;width: 
auto的元素宽度变化,宽度 = 父元素宽度 - 左边margin - 右边margin, 并且向左偏移30px。

2.3、设置children元素的margin:0 -30px
width: 100%和width: auto有什么区别_第3张图片

如果设置children元素margin: 0 -30px时,width: 100%的元素宽度不变,位置向左偏移-30px;
width: auto的元素宽度变化,宽度 = 父元素宽度 - 左边margin - 右边margin,
并且向左偏移30px ,并且向左偏移-30px;

你可能感兴趣的:(CSS面试,width,auto)