2012-02-26 18 views
85

Próba użycia niestandardowego koloru szesnastkowego dla mojego trójkąta css (obramowanie). Ponieważ jednak używa właściwości border, nie jestem pewien, jak to zrobić. Chciałbym omijać javascript i css3 po prostu ze względu na kompatybilność. Staram się, aby trójkąt miał białe tło z granicą 1px (wokół zakrzywionych boków trójkąta) z kolorem # CAD5E0. czy to możliwe? Oto co mam do tej pory:Kolor niestandardowego obramowania trójkąta CSS

.container { 
    margin-left: 15px; 
    width: 200px; 
    background: #FFFFFF; 
    border: 1px solid #CAD5E0; 
    padding: 4px; 
    position: relative; 
    min-height: 200px; 
} 

.container:after { 
    content: ''; 
    display: block; 
    position: absolute; 
    top: 10px; 
    left: 100%; 
    width: 0; 
    height: 0; 
    border-color: transparent transparent transparent #CAD5E0; 
    border-style: solid; 
    border-width: 10px; 
}​ 

Moje skrzypce: http://jsfiddle.net/4ZeCz/

Odpowiedz

131

trzeba rzeczywiście fałszywy on z dwóch trójkątów ....

.container { 
    margin: 15px 30px; 
    width: 200px; 
    background: #fff; 
    border: 1px solid #a00; 
    position: relative; 
    min-height: 200px; 
    padding: 20px; 
    text-align: center; 
    color: #fff; 
    font: bold 1.5em/180px Helvetica, sans-serif; 
    text-shadow: 0 0 1px #000; 
} 

.container:after, 
.container:before { 
    content: ''; 
    display: block; 
    position: absolute; 
    left: 100%; 
    width: 0; 
    height: 0; 
    border-style: solid; 
} 

.container:after { 
    top: 10px; 
    border-color: transparent transparent transparent #fdd; 
    border-width: 10px; 
} 

.container:before { 
    top: 9px; 
    border-color: transparent transparent transparent #a00; 
    border-width: 11px; 
} 

Updated Fiddle here

enter image description here

+0

To doskonały! dokładnie to, czego potrzebowałem. Dziękuję Ci. –

+0

Hej, nie rozumiem, jak zmodyfikowałbym trójkąt, aby pojawił się po drugiej stronie pudełka (nie rozumiem, jak działa trójkąt css) – Kevin

+2

+1 i 1000 dzięki :) – arjuncc

71

Wiem, że akceptujesz to, ale sprawdź to jeden także z mniejszym css:

.container { 
    margin-left: 15px; 
    width: 200px; 
    background: #FFFFFF; 
    border: 1px solid #CAD5E0; 
    padding: 4px; 
    position: relative; 
    min-height: 200px; 
} 

.container:after { 
    content: ''; 
    display: block; 
    position: absolute; 
    top: 10px; 
    right:-7px; 
    width: 10px; 
    height: 10px; 
    background: #FFFFFF; 
    border-right:1px solid #CAD5E0; 
    border-bottom:1px solid #CAD5E0; 
    -moz-transform:rotate(-45deg); 
    -webkit-transform:rotate(-45deg); 
} 

http://jsfiddle.net/4ZeCz/3/

+0

hej, nie rozumiem, jak zmodyfikowałbym trójkąt, aby pojawił się po drugiej stronie pudełka (nie rozumiem, jak działa trójkąt css) – Kevin

+1

@Kevin i tworzę to sprawdź http://jsfiddle.net/4ZeCz/97 /. Spróbuj zagrać z właściwościami, których używam i jeśli masz jakieś pytanie, możesz mnie zapytać :) – sandeep

+1

Ta technika nie obsługuje IE, prawda? –

Powiązane problemy