2015-02-05 158 views
9

我看過問題the difference between height: 100%; and height: auto;,但height: 100%;height: inherit;之間的區別是什麼?CSS高度:100%和身高:繼承

我基本上要這個元素的高度,以填補/匹配它的容器。是否有理由使用100%而不是inherit,反之亦然?

+2

你讀過什麼繼承呢?如果容器沒有指定的高度,這意味着它將是自動的,那麼你將繼承自動。例如http://jsfiddle.net/50oaax77/ – Huangism 2015-02-05 19:57:53

+0

https://developer.mozilla.org/en-US/docs/Web/CSS/inherit – j08691 2015-02-05 19:59:31

+0

@ j08691 - 請注意,對於關聯到這個問題,那MDN文檔有第一段中的一個重要錯誤。該元素從父級繼承*指定值*,而不是其計算值。見http://www.w3.org/TR/CSS2/cascade.html#value-def-inherit – Alohci 2015-02-06 01:03:56

回答

16

height: 100%將匹配元素的父的高度,不管父母的身高值。

height: inherit會,顧名思義,繼承值從它的父。如果父母的值爲height: 50%,那麼孩子也將是其父母的身高的50%。如果父代的大小是絕對值(例如height: 50px)定義,那麼height: inheritheight: 100%將會對孩子相同的行爲。

+2

很好解釋。 [此處爲示例](http://jsbin.com/bepoqa/2/edit)。 – 2015-02-05 20:02:16

+0

@HashemQolami很好的例子!我會建議爲子div添加一個邊界,以便直觀地顯示它包含在父級中。 – Nepoxx 2015-02-05 20:04:27

+0

啊,這是關鍵。我沒有考慮百分比。如果容器的百分比不是100%,那麼這個元素肯定不會做我想做的事情。我會盡快接受它。 – dnc253 2015-02-05 20:05:38

0

height:inherit: inherit關鍵字指定一個屬性應該從其父元素繼承它的值。

高度:100%:定義高度在包含塊

的實例,百分比,look here