2013-03-22 25 views
1

我想給border-bottom。header的邊框顏色應該和它的子字體顏色相同。請找到html代碼並建議我繼續下一步。css inherit child propeties

<header> 
    <div class="cblt-panel"> 
    <header> 
      <a href="HomePage;jsessionid=9Z1DRLtK8FfgmVDhysv4fk8LKjj1rTpSpJcS99dvcbffT4KTZ9tN!91184445"> 
      <div class="header-wrapper header"> 
       <h1 class="dealer-name">Airport Chevrolet Cadillac</h1> 
      </div> 
      </a> 

    </header> 

    </div> 
</header> 
在上述標記

,我想設置邊界 - 底顏色外標頭標記相同子h1標籤的字體顏色。可能嗎 ?

+1

我試過border-bottom-color:inherit currentColor;但我不認爲這是正確的過程。 IAM非常新的CSS,所以我沒有任何指示繼續 – 2013-03-22 05:58:21

+0

CSS繼承是每個屬性只。顏色到顏色,邊框顏色到邊框顏色等... – BlakeGru 2013-03-22 05:59:06

+0

謝謝BG_Insight。我們可以繼承兒童的財產嗎?我的意思是同樣的財產? – 2013-03-22 06:03:40

回答

1

我不認爲你可以通過純CSS實現它。如果你能夠使用jQuery,這是相當簡單:

var h1Color = $('.dealer-name').css('color'); 
$('header:eq(0)').css('border-bottom-color', h1Color); 

演示:http://jsfiddle.net/S9svs/

1

不,這是不可能的:在CSS中,父母從來沒有從他們的子女繼承。

您可以使元素的邊框顏色與自己的內容顏色(文本顏色)相同,即根本不設置邊框顏色。但要在小孩上使用顏色集,您需要JavaScript。

更好的策略是組合設置,以便簡單地將標題元素的顏色和封閉元素的顏色設置爲相同的值。儘管如此,這些設置需要以單獨的規則完成。 header { border-color: #060; } h1 { color: #060; }

+1

在生活中,父母從不會繼承孩子 – Swadq 2013-03-22 07:50:08

0

如果你一定想這樣做動態的,那麼你必須使用一個CSS 預處理語言它...

Less CSS

在這裏你做出動態定義的CSS並用它喜歡你做在JavaScript ...

例如,

@color:#000; 
header { border-bottom-color:@color; } 
header h1 { color:@color; } 
0

有趣日如果沒有設置,border-color使用color屬性來定義它的顏色,所以在某些情況下你可能會做相反的事情。例如:

header { 
    color:red; 
    border-bottom: 2px solid; 
} 

header a,header h1 { 
    color:inherit; 
} 

DEMO:http://jsfiddle.net/brTTT/

在演示中,通過懸停只是量變到質變的headercolor財產看到的顏色變化。