1.第一种是用calc来解决。
<style>
.container
{
border:10px solid red;
width:300px;
height:300px;
padding:0px;
}
.box
{
border:10px solid blue;
width:calc(100%-40px);
height:calc(300px-40px);
margin:0px;
}
</style>
<div class="container">
<div class="box"></div>
</div>
2.第二种是用box=-sizing来解决。
<style>
.container
{
width:300px;
height:300px;
border:10px solid red;
margin:0px;
padding:0px;
}
.box
{
box-sizing:border-box;
border:10px solid blue;
width:300px;
height:300px;
margin:10px;
}
</style>
当类box包含box-sizing时
设置的宽度包括width+border,不包括margin;当对元素类.box设置margin时,类box元素会从包含框中溢出。
3.
另一种情况是运用position进行居中:
<style>
.container
{
width:300px;
height:300px;
padding:0px;
margin:0px;
border:10px solid red;
position:relative;
}
.box
{
margin:0px;
padding:10px;
border:10px solid blue;
position:absolute;
top:0px;
left:0px;
right:0px;
bottom:0px;
}
其中那么此时的类box的du的margin+border+padding等于300px;