2014-09-24 213 views
6

可能是一個已經回答的解決方案,但所有錯誤的答案(也就是沒有解決這個問題的答案),要篩選正確的答案是非常困難的。CodeMirror填充Div並使Div 100%高度

的問題是這個---如何使CodeMirror填補父DIV的100%---而不強制頁面的其餘部分爲100%的高度,因爲這將導致以下問題:

當使用

html, body { height: 100%; } 

您正在有效地告訴頁面,整個高度是整個頁面的瀏覽器的視圖端口,包括所有內容。問題在於,我不希望頁面上的所有內容都受限於此比例。我想要做的是在不破壞響應性(aka,mobile等支持)的情況下正常訪問頁面,並且在頁面上仍然有一個div(右側面板)有一個div,只有div是100%的高度---該分區中的空間。我不希望百分之百的高度溢出到菜單中,在菜單下方或上方等。它必須保持在框內。

enter image description here

回答

6

您是否嘗試過這個屬性:

/* Firefox */ 
height: -moz-calc(100vh - 190px); 
/* WebKit */ 
height: -webkit-calc(100vh - 190px); 
/* Opera */ 
height: -o-calc(100vh - 190px); 
/* Standard */ 
height: calc(100vh - 190px); 

使用VH允許您將元素的大小限制可視區域相結合。

+0

這是一個非常方便的命令(vh)......但是,CodeMirror盒的大小與Veiwport高度一致,而不是其所在的容器的高度 - 這意味着CodeMirror的大小可以確切它上面的內容的高度是可以滾動頁面的。有沒有辦法自動計算頂部元素高度和vh的差異。這是響應。 – 2014-09-24 11:50:09

+0

嘗試使用父div的邊距:0;並使用子div高度:100%; – 2014-09-24 11:54:13

+0

這樣做確實是一件令人討厭的事情。 CodeMirror仍會關閉頁面,並與左側菜單重疊。它還會強制我的標題將所有元素對齊到保持高度的左側。有沒有辦法使用css3來通過它的選擇器來獲取另一個div的高度 - 並在計算中使用它 - 這是我確信的。所有谷歌的結果都只指向JavaScript,但我相信這可以完成。 – 2014-09-24 11:58:51