input框设置宽度为width:100% 和padding后宽度超出父节点div

admin2017-07-213962

input 设置 width:100% 和padding后宽度超出父节点

添加如下css即可:

box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;

原理如下:

语法:

box-sizing:content-box | border-box

默认值content-box

适用于:所有接受widthheight的元素

继承性:无


取值:

  • content-box:

  • padding和border不被包含在定义的width和height之内。对象的实际宽度等于设置的width值和border、padding之和,即 ( Element width = width + border + padding )

  • 此属性表现为标准模式下的盒模型。

  • border-box:

  • padding和border被包含在定义的width和height之内。对象的实际宽度就等于设置的width值,即使定义有border和padding也不会改变对象的实际宽度,即 ( Element width = width )

  • 此属性表现为怪异模式下的盒模型。

示例:

  • content-box:

    .test1{ box-sizing:content-box; width:200px; padding:10px; border:15px solid #eee; }


  • border-box:

    .test2{ box-sizing:border-box; width:200px; padding:10px; border:15px solid #eee; }




网友评论