2012-02-26 33 views
85

Css üçgenim (kenarlık) için özel bir altıgen renk kullanmayı denemek. Ancak sınır özelliklerini kullandığından, bunu yapmanın nasıl olacağından emin değilim. Sadece uyumluluk nedeniyle javascript ve css3'ten kurtulmak istiyorum. Üçgenin 1xx kenarlıklı (üçgenin köşeli kenarları etrafında) beyaz arka planının # CAD5E0 rengiyle olması için çalışıyorum. Mümkün mü? İşte ben bugüne kadar ne var:CSS üçgeni özel kenarlık rengi

.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; 
}​ 

Benim keman: http://jsfiddle.net/4ZeCz/

cevap

131

Aslında iki üçgen ile sahte zorunda ....

.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

mükemmel ki! tam olarak ihtiyacım olan şey. Teşekkür ederim. –

+0

hey, kutunun öbür ucunda görünecek üçgeni nasıl değiştireceğimi anlamıyorum (üçgen css'nin nasıl çalıştığını anlamadım) – Kevin

+2

+1 ve 1000 teşekkürler :) – arjuncc

71

Bunu kabul ettiğinizi biliyorum, ancak bunu kontrol edin az css ile aynı zamanda bir:

.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

hey, kutunun öbür ucunda görünecek üçgeni nasıl değiştireceğimi anlamıyorum (üçgenin nasıl çalıştığını anlayamıyorum) – Kevin

+1

@Kevin bunu yaratıyorum lütfen http://jsfiddle.net/4ZeCz/97 /. Ben sahip olduğum özellikleri ile oynamak için deneyin ve bana sorabilirsiniz herhangi bir sorunuz varsa :) – sandeep

+1

Bu teknik, IE desteklemiyor? –

İlgili konular