2013-02-26 177 views
3

我最近學會了如何用CSS和HTML創建三角形div的外觀。現在,我想知道是否可以在三角形div的任何邊上添加邊框,以便如果我將div賦予白色背景和黑色邊框,您仍然可以看到它?有什麼辦法可以做到這一點?用CSS創建三角形div

的jsfiddle:http://jsfiddle.net/c75KM/1/

HTML:

<div class="arrow-up"></div> 

CSS:

.arrow-up { 
width: 0; 
height: 0; 
border-left: 10px solid transparent; 
border-right: 10px solid transparent; 
border-bottom: 10px solid black; 
} 
+0

看到這個SO回答:http://stackoverflow.com/a/9489667/703717 – Danield 2013-02-26 07:33:11

回答

6

這是做它的典型方式:

JSFiddle

.arrow-up:after { 
    position:absolute; 
    content:""; 
    width: 0; 
    height: 0; 
    margin-top:1px; 
    margin-left:2px; 
    border-left: 10px solid transparent; 
    border-right: 10px solid transparent; 
    border-bottom: 10px solid white; 
} 

.arrow-up:before { 
    position:absolute; 
    content:""; 
    width: 0; 
    height: 0; 
    border-left: 12px solid transparent; 
    border-right: 12px solid transparent; 
    border-bottom: 12px solid black; 
} 
+0

什麼是內容:? – user2096890 2013-02-26 06:55:16

+0

'content'是爲了讓僞元素':before'和':after'可見。在上面我使用了兩個與'.arrow-up'有關的'假'元素,我們可以用兩個單獨的元素來完成它,但它不會那麼好。在此進一步閱讀http://css-tricks.com/pseudo-element-roundup/ – 2013-02-26 06:57:39

+0

好的,謝謝! – user2096890 2013-02-26 06:58:56