2010-05-01 101 views
0

我想製作一個雙邊框,但兩者之間沒有空格,雙邊框應該是不同的顏色。我嘗試使用圖像,但我認爲CSS可能可以爲我執行這項工作,我搜索了網絡,但幾乎沒有發現任何接近。雙邊框之間沒有空格

我想要的是總共2px的虛線邊框,頂部顏色爲#a4a4a4,底部顏色爲#474747。

任何想法如何我可以做到這一點,而不是創建2個div?

+0

@Dav是正確的,或使用的重複圖像的每個側去。 – 2010-05-01 05:29:35

回答

6

CSS不支持每邊多個邊框顏色。如果你想要兩個不同顏色的虛線邊框,你需要有兩個不同的元素,每個都有不同的樣式邊框。

3

您最安全的選擇是使用兩個元素,但如果您使用漸進式增強功能,則可以嘗試使用此方法。它將在Safari,Chrome FF 3.6+(Prob 3.5),Opera(至少10.10+)和IE8 +(IE8模式)下工作。它使用僞類來做它的魔法。 注意:它無法在FF 3.0中工作,並留下額外的邊框,但在IE6 & 7中,它只能回落到一個邊框。您可以使用check out a demo

HTML

<div id="double"> 
    <h2>Double Border</h2> 
    <p>This div <a href="#">should</a> have two borders.</p> 
    <p>There are only normal elements inside.</p> 
</div> 

CSS

#double { 
border: dotted 1px #a4a4a4; 
padding: 10px; 
position: relative; 
} 

#double > * { 
position: relative; 
z-index: 100; 
} 

/* Add an "extra" element using CSS */ 
#double:after { 
content: ""; 
position: absolute; 
z-index: 50; 
border: dotted 1px #474747; 
left: 0; 
top: 0; 
bottom: 0; 
right: 0; 
display: block; 
} 
+0

謝謝,我想我可能會去2元素:) – user330239 2010-05-01 05:41:46

+0

不錯的工作!但不適用於IE瀏覽器(我有IE7) 你可以在'#double:after'的頂部,底部,左側和右側使用距離(假設4px)在兩個邊界之間進行距離。 – diEcho 2010-05-01 12:16:04

相關問題