一、兼容性
首先,inherit这个属性只是在ie8+才支持;100%支持ie6;
二、大多数情况下没有区别
在正常情况下height:100%与height:inherit没有任何区别;
1.父元素:height:auto;height:100%与inherit也都是auto;
2.父元素定高:height:100px; height:100%与inherit也都是100px;
三、绝对定位情况下大不同
如果子元素为绝对定位元素,则height:100%;参考的父级是离它最近的有定位属性的父级而非直接父级;
但是此时height:inherit;参考的依旧是直接父级,无论直接父级是否有定位属性;
参考demo;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
.wrap{
width: 300px;
height: 300px;
border:5px solid red;
}
.box{
width: 200px;
height: 200px;
border:5px solid yellow;
}
.child{
width: 100px;
height: 100px;
border:5px solid blue;
}
.margin{
top:50px;
left:50px;
}
.abs{
position:absolute;
}
.rel{
position: relative;
}
</style>
</head>
<body>
<div class="wrap">
<div class="box">
<div class="child abs"></div>
</div>
</div>
</body>
</html>