2012-07-29 26 views

回答

6

看看部份小提琴 - http://jsfiddle.net/hyH48/688/

我已經添加了另一個僞元素。我給了它與元素background-colora相同的邊框顏色,並將其放置在那裏已經存在的頂部。

下面是情況下,HTML和CSS,你不能看到它:

HTML:

<div id="mybox"> 
    This will be my tooltip 
</div>​ 

CSS:

#mybox { 
    position: relative; 
    width: XXXpx; 
    height: YYYpx; 
    border: 1px solid #000; 
    border-radius: 4px; 
    background-color: #fff; 
} 

#mybox:after, 
#mybox:before { 
    content: ""; 
    border-style: solid; 
    border-width: 10px; 
    width: 0; 
    height: 0; 
    position: absolute; 
    top: 100%; 
    left: 20px 
} 

#mybox:before { 
    border-color: #000 transparent transparent; /*non transparent color same as #mybox's border-color*/ 
} 

#mybox:after { 
    margin-top: -2px; 
    border-color: #fff transparent transparent; /*non transparent color same as #mybox's background-color*/ 
} 
+0

這很好,那麼簡單。謝謝! – 2012-07-29 00:55:44

+0

沒問題。樂意效勞。 – banzomaikaka 2012-07-29 00:56:57

6

看我做了什麼:jsFiddle

您可以使用:before僞元素來執行三角形的邊框和a:after來填充三角形。你只需要對after元素的位置和邊界值進行一些調整,使其變小。

#mybox { 
    width:200px; 
    height:30px; 
    border-style:solid; 
    border-width:thin; 
    border-color:#000066; 
    border-radius: 4px; 
    position:relative; 
} 

#mybox:after{ // Our small triangle to fill the space 
    content:""; 
    border-color: #fff transparent transparent; 
    border-style:solid; 
    border-width:9px; 
    width:0; 
    height:0; 
    position:absolute; 
    bottom:-18px; 
    left:21px 
} 

#mybox:before{ 
    content:""; 
    border-color: #000066 transparent transparent; 
    border-style:solid; 
    border-width:10px; 
    width:0; 
    height:0; 
    position:absolute; 
    bottom:-20px; 
    left:20px 
} 
​ 
相關問題