하나의 테두리에만 윤곽선
인세 트 테두리 를 HTML 요소 에 적용하는 방법 ( 단면에만 적용). 지금까지 저는 이미지 (GIF / PNG)를 사용하여 배경으로 사용하고 늘리고 (반복 -x) 블록 상단에서 약간 떨어진 위치에 배치했습니다. 최근에 저는 outline CSS 속성을 발견했습니다 . 그러나 전체 블록을 동그라미로하는 것 같습니다.이 윤곽선 속성을 사용하여 하나의 테두리에서만 수행 할 수 있습니까? 또한 그렇지 않은 경우 배경 이미지를 대체 할 수있는 CSS 트릭이 있습니까? (나중에 CSS 등을 사용하여 윤곽선의 색상을 개인화 할 수 있도록). 미리 감사드립니다!
다음은 달성하려는 이미지입니다. http://exiledesigns.com/stack.jpg
개요는 실제로 전체 요소에 적용됩니다 .
이제 이미지를 보았으니이를 달성하는 방법은 다음과 같습니다.
.element {
padding: 5px 0;
background: #CCC;
}
.element:before {
content: "\a0";
display: block;
padding: 2px 0;
line-height: 1px;
border-top: 1px dashed #000;
}
.element p {
padding: 0 10px;
}
<div class="element">
<p>Some content comes here...</p>
</div>
모든 크기와 색상은 자리 표시 자일 뿐이며 원하는 결과와 정확히 일치하도록 변경할 수 있습니다.
중요 참고 사항 : .element에 display:block;
(div의 기본값)이 있어야 작동합니다. 그렇지 않은 경우 전체 코드를 제공해 주시면 구체적인 답변을 드릴 수 있습니다.
box-shadow
한쪽에 윤곽선을 만드는 데 사용할 수 있습니다 . 마찬가지로 outline
, box-shadow
박스 모델의 크기를 변경하지 않습니다.
이것은 맨 위에 줄을 놓습니다.
box-shadow: 0 -1px 0 #000;
실제로 확인할 수 있는 jsFiddle을 만들었습니다 .
삽입
를 들어 삽입 된 테두리 사용 삽입 된 키워드를. 이렇게하면 맨 위에 삽입 된 선이 표시됩니다.
box-shadow: 0 1px 0 #000 inset;
쉼표로 구분 된 문을 사용하여 여러 줄을 추가 할 수 있습니다. 이렇게하면 상단과 왼쪽에 삽입 선이 표시됩니다.
box-shadow: 0 1px 0 #000 inset,
1px 0 0 #000 inset;
box-shadow
작동 방식 에 대한 자세한 내용 은 MDN 페이지를 확인 하세요 .
Shadow (Like border) + Border로 시도
border-bottom: 5px solid #fff;
box-shadow: 0 5px 0 #ffbf0e;
나는 이것이 오래된 것을 압니다. 하지만 그래. Giona 대답보다 훨씬 짧은 솔루션을 선호합니다.
[contenteditable] {
border-bottom: 1px solid transparent;
&:focus {outline: none; border-bottom: 1px dashed #000;}
}
나는 내 입력 필드에 테두리를 지정하고, 포커스에서 윤곽선을 제거하고, 대신 테두리를 "윤곽선"으로 지정하고 싶습니다.
input {
border: 1px solid grey;
&:focus {
outline: none;
border-left: 1px solid violet;
}
}
투명한 테두리로 할 수도 있습니다.
input {
border: 1px solid transparent;
&:focus {
outline: none;
border-left: 1px solid violet;
}
}
HTML / CSS의 장점은 일반적으로 동일한 효과를 얻을 수있는 방법이 여러 가지라는 것입니다. 다음은 원하는 작업을 수행하는 또 다른 솔루션입니다.
<nav id="menu1">
<ul>
<li><a href="#">Menu Link 1</a></li>
<li><a href="#">Menu Link 2</a></li>
</ul>
</nav>
nav {
background:#666;
margin:1em;
padding:.5em 0;
}
nav ul {
border-top:1px dashed #fff;
list-style:none;
padding:.5em;
}
nav ul li {
display:inline-block;
}
nav ul li a {
color:#fff;
}
http://jsfiddle.net/10basetom/uCX3G/1/
only one side outline
wont work you can use the border-left/right/top/bottom
if i an getting properly your comment
참고URL : https://stackoverflow.com/questions/12671898/outline-on-only-one-border
'development' 카테고리의 다른 글
numpy 배열에서 행 삭제 (0) | 2020.10.07 |
---|---|
페이지의 아무 곳에서나 누른 Enter 키 캡처 (0) | 2020.10.07 |
postgresql에서 변수 값 인쇄 (0) | 2020.10.07 |
탐색 창 반투명 상태 표시 줄이 작동하지 않음 (0) | 2020.10.07 |
앵커가있는 ASP.Net MVC RedirectToAction (0) | 2020.10.07 |