답변:
"투명"을 색상으로 사용할 수 있습니다. IE의 일부 버전에서는 검은 색으로 표시되지만 IE6 일 이후로 테스트하지 않았습니다.
http://www.researchkitchen.de/blog/archives/css-bordercolor-transparent.php
투명 테두리 대신 불투명 테두리에 대한 해결책을 찾기 위해 많은 분들이 여기에 착륙해야합니다. 당신이 사용할 수있는 경우 rgba
, a
을 의미합니다 alpha
.
.your_class {
height: 100px;
width: 100px;
margin: 100px;
border: 10px solid rgba(255,255,255,.5);
}
여기에서, 당신은 변경할 수 opacity
의를 border
에서0-1
완전한 투명 테두리를 원할 경우 사용하는 가장 좋은 방법은 다음 transparent
과 같습니다.border: 1px solid transparent;
테두리를 제거하고 패딩을 늘릴 수 있습니다.
li {
display: inline-block;
padding: 6px;
border-width: 0px;
}
li:hover {
border: 1px solid #FC0;
padding: 5px;
}
<ul>
<li>Hovering is great</li>
</ul>
<a/>
상자 와 같이 원하는 경우 테두리를 줄이고 패딩을 늘리는 것은 소용이 없습니다 . 테두리는 요소 (따라서 클릭 가능)에 속하고 패딩은 상위 요소에 속합니다.
네, 사용할 수 있습니다 border: 1px solid transparent
또 다른 해결책은 outline
문서 흐름에 영향을주지 않는 마우스 오버시 (그리고 테두리를 0으로 설정) 사용하는 것입니다.
li{
display:inline-block;
padding:5px;
border:0;
}
li:hover{
outline:1px solid #FC0;
}
NB. 윤곽선은 개별 측면이 아닌 sharthand 속성으로 만 설정할 수 있습니다. 디버깅 용으로 만 사용되지만 잘 작동합니다.
옵션이 많을수록 더 좋다고 의견에 말 했으므로 여기에 또 다른 옵션이 있습니다.
CSS3에는 소위 "박스 모델"이라는 두 가지가 있습니다. 하나는 블록 요소의 너비에 테두리와 패딩을 추가하고 다른 하나는 추가하지 않습니다. 후자를 지정하여 사용할 수 있습니다.
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
그러면 최신 브라우저에서 요소의 너비는 항상 동일합니다. 즉, 마우스 오버시 테두리를 적용하면 테두리 너비가 요소의 전체 너비에 추가되지 않습니다. 테두리는 말하자면 요소의 "내부"에 추가됩니다. 그러나 내가 올바르게 기억한다면 width
이것이 작동 하도록 명시 적으로 지정해야합니다 . 이 특정 경우에는 옵션이 아닐 수 있지만 향후 상황에 대비하여 염두에 둘 수 있습니다.
이 블로그 항목 에는 border-color: transparent
IE6 에서 에뮬레이트하는 방법이 있습니다. 아래 예제에는 블로그 항목 댓글에서 가져온 "hasLayout"수정 사항이 포함되어 있습니다.
/* transparent border */
.testDiv {
width: 200px;
height: 200px;
border: solid 10px transparent;
}
/* IE6 fix */
*html .testDiv {
zoom: 1;
border-color: #FEFEFE;
filter: chroma(color=#FEFEFE);
}
있는지 확인 border-color
IE6 수정에 사용이 어디에서나 사용되지 않는 .testDiv
요소입니다. 사용 가능성이 훨씬 적기 때문에 예제를에서 pink
로 변경했습니다 #FEFEFE
.
투명 속성 사용
border-color : transparent;