2012-02-26 4 views
85

내 CSS 삼각형 (테두리)에 사용자 지정 16 진수 색을 사용하려고 시도했습니다. 그러나 경계 속성을 사용하므로이 작업을 수행하는 방법을 잘 모릅니다. 나는 호환성 때문에 단순히 자바 스크립트와 css3을 조종하고 싶습니다. 나는 삼각형에 색 # CAD5E0을 가진 1px 테두리 (삼각형의 각진 각 변의 주위)가있는 흰색 배경을 가지려고합니다. 이것이 가능한가? 여기에 지금까지이 작업은 다음과 같습니다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; 
}​ 

내 바이올린 : http://jsfiddle.net/4ZeCz/

답변

131

당신은 실제로 두 개의 삼각형으로 가짜가 ....

.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

완벽 그! 내가 필요한 것. 고맙습니다. –

+0

이봐, 내가 상자의 다른면에 표시되도록 삼각형을 수정하는 방법을 이해하지 못한다. (나는 삼각형 CSS가 어떻게 작동하는지 이해하지 못한다) – Kevin

+2

+1과 1000 감사합니다. – arjuncc

71

나는 당신이 그것을 인정하지만 이것을 확인합니다. 적은 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

이봐, 내가 어떻게 상자의 반대편에 나타 내기 위해 삼각형을 수정하겠습니까 (나는 삼각형 CSS가 작동하는 방법을 이해할 수 없다) – Kevin

+1

@ 케빈이 만들어 확인하십시오 http://jsfiddle.net/4ZeCz/97 /. 내가 가지고있는 속성을 가지고 놀고 싶은데 어떤 질문이라도 내게 묻는다면 :) – sandeep

+1

이 기술은 IE를 지원하지 않습니까? –