2011-03-14 61 views
1

CSS參考明確指出max-height未被繼承。問題是,我希望它被繼承。但是,我似乎無法獲得正確的CSS咒語。事情是,我有我想申請到的DIV,然後強制執行的所有兒童說DIV榮譽max-height屬性CSS類:帶繼承的CSS最大高度

.my-viewer { 
    max-height: 800px; 
} 

* { 
    max-height: inherit; 
} 

不幸的是,上面的代碼不起作用。例如,在Chrome開發工具中,'max-height'的'inherit'設置被刪除,被禁用。任何想法如何解決這個問題?

回答

5

也許我不理解,但不應該這項工作?

.my-viewer { 
    max-height: 800px; 
} 

.my-viewer * { 
    max-height: inherit; 
} 

這將是所有兒童元素.my-viewer。如果這不起作用,那麼max-height:100%應該是.my-viewer的孩子。我假設只有.my-viewer divs是你想要繼承的,並不是所有的元素,比如ap等等。

.my-viewer { 
    max-height: 800px; 
} 

.my-viewer div { 
    position:relative; 
    max-height: 100%; 
} 

編輯:如果你正在尋找更具體的使用>選擇器。

.my-viewer > *.my-viewer > div

+0

這將是的'。我-viewer'所有的孩子和他們的孩子和他們的孫子都和所有他們的偉大^ N孫子:P – BoltClock

+0

那麼,他並沒有真正澄清直接的孩子,但如果需要的話,他可以將其改變爲更具體。我會將其添加到答案中。 –

+1

「孩子」確實意味着直接的親子關係,但我只是一個惱人的僧侶,所以我會停下來。 – BoltClock

1

你或許應該使用不同的CSS選擇:

.my-viewer { 
    max-height: 800px; 
} 
.my-viewer * { 
    max-height: inherit; 
} 

但請注意,這不會在IE瀏覽器無論如何(或者至少IE 8之前),見here

0

這應該工作

* { max-height: inherit; } 

.my-viewer { max-height: 800px; } 
+0

這與問題代碼有什麼不同? – BoltClock