CSS / border-style / 테두리 모양을 정하는 속성

개요

border-style은 테두리(border)의 모양을 정하는 속성입니다.

  • 기본값 : none
  • 상속 : No
  • 애니메이션 : No
  • 버전 : CSS Level 1

border-style은 border-top-style, border-right-style, border-bottom-style, border-left-style의 축약형입니다.

문법

border-style:none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset | initial | inherit
  • initial : 기본값으로 설정합니다.
  • inherit : 부모 요소의 속성값을 상속받습니다.

initial과 inherit 이외의 값의 모양은 아래의 예제를 참고하세요.

속성값은 한 개에서 네 개까지 정할 수 있습니다.

border-style: xx

모든 모서리의 모양을 xx로 만듭니다.

border-style: xx yy

위쪽과 아래쪽 모서리의 모양은 xx로, 왼쪽와 오른쪽의 모양은 yy로 만듭니다.

border-style: xx yy zz

위쪽 모양은 xx로, 왼쪽과 오른쪽의 모양은 yy로, 아래쪽의 모양은 zz로 만듭니다.

border-style: xx yy zz ww

위쪽 모양은 xx로, 오른쪽 모양은 yy로, 아래쪽의 모양은 zz로, 왼쪽 모양은 ww로 만듭니다.

예제 1

각 속성값이 어떤 모양인지 보여주는 예제입니다. 값에 따라서 브라우저마다 모양이 다르게 나올 수 있습니다.

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>CSS</title>
    <style type="text/css">
      h1 {
        font-family: Georgia;
        font-style: italic;
        padding: 10px;
      }
      .none {
        border-style: none;
      }
      .hidden {
        border-style: hidden;
      }
      .dotted {
        border-style: dotted;
      }
      .dashed {
        border-style: dashed;
      }
      .solid {
        border-style: solid;
      }
      .double {
        border-style: double;
      }
      .groove {
        border-style: groove;
      }
      .ridge {
        border-style: ridge;
      }
      .inset {
        border-style: inset;
      }
      .outset {
        border-style: outset;
      }
    </style>
  </head>
  <body>
    <h1 class="none">No Border.</h1>
    <h1 class="hidden">Hidden Border.</h1>
    <h1 class="dotted">Dotted Border.</h1>
    <h1 class="dashed">Dashed Border.</h1>
    <h1 class="solid">Solid Border.</h1>
    <h1 class="double">Double Border.</h1>
    <h1 class="groove">Groove Border.</h1>
    <h1 class="ridge">Ridge Border.</h1>
    <h1 class="inset">Inset Border.</h1>
    <h1 class="outset">Outset Border.</h1>
  </body>
</html>

마이크로소프트 엣지에서는 다음과 같이 나옵니다.

크롬에서는 다음과 같이 나옵니다.

파이어폭스에서는 다음과 같이 나옵니다.

예제 2

속성값 중 none과 hidden은 표(table)에서

border-collapse: collapse

일 때 차이가 납니다. 다음은 그 차이를 보여주는 예제입니다.

<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8" />
    <title>CSS</title>
    <style type="text/css">
      table {
        width: 100%;
        font-family: Georgia;
        font-style: italic;
        border: 1px solid #000000;
        border-collapse: collapse;
      }
      table td {
        border: 1px solid #000000;
        padding: 0px 20px;
      }
      table.none {
        border-style: none;
      }
      table.hidden {
        border-style: hidden;
      }
    </style>
  </head>
  <body>
    <h1>border-style: none;</h1>
    <table class="none">
      <tr>
        <td>
          <p>Lorem</p>
        </td>
        <td>
          <p>Ipsum</p>
        </td>
      </tr>
      <tr>
        <td>
          <p>Dolor</p>
        </td>
        <td>
          <p>Amet</p>
        </td>
      </tr>
      <tr>
        <td>
          <p>Phasellus</p>
        </td>
        <td>
          <p>Mauris</p>
        </td>
      </tr>
    </table>
    <h1>border-style: hidden;</h1>
    <table class="hidden">
      <tr>
        <td>
          <p>Lorem</p>
        </td>
        <td>
          <p>Ipsum</p>
        </td>
      </tr>
      <tr>
        <td>
          <p>Dolor</p>
        </td>
        <td>
          <p>Amet</p>
        </td>
      </tr>
      <tr>
        <td>
          <p>Phasellus</p>
        </td>
        <td>
          <p>Mauris</p>
        </td>
      </tr>
    </table>
  </body>
</html>

브라우저 지원

  • Chrome : 1.0+
  • Firefox : 1.0+
  • Internet Explorer : 4.0+
  • Opera : 3.5+
  • Safari : 1.0+

Related Posts

CSS / 메모

CSS / 메모

크롬에서 input에 생기는 파란색 테두리 없애는 방법 input에 무언가를 입력하려고 커서를 위치시키면 다음처럼 테두리가 생깁니다. :focus 선택자를 이용해서 없앨 수 있습니다. input:focus { outline: none; } iOS에서 input에 생기는 그림자와 둥근 테두리 없애는 방법 iOS에서는 input이 둥근 테두리로 나오고 그림자 효과가 있습니다. 이를 없애는 방법은 다음과 같이 스타일링하는 것입니다. input { -webkit-appearance: none; border-radius: 0px; ​} 가변폭 ...

CSS / 애니메이션 / animation / animation-direction - 진행 방향 정하는 속성

CSS / 애니메이션 / animation / animation-direction - 진행 방향 정하는 속성

animation-direction animation-direction은 애니메이션의 진행 방향 정하는 속성입니다. 애니메이션 관련 속성은 IE 버전 10 이상에서 사용할 수 있습니다. 문법 animation-direction: normal | reverse | alternate | alternate-reverse | initial | inherit normal : 기본값입니다. 정해진 순서로 진행합니다. reverse : 반대 순서로 진행합니다. alternate : 정해진 순서로 진행했다가 반대 순서로 진행합니다. alternate-reverse : 반대 순서로 진행했다가 정해진 순서로 진행합니다. initial : ...

CSS / table-layout / 표(table) 크기 고정시키기

CSS / table-layout / 표(table) 크기 고정시키기

표(table)는 width 속성으로 가로 크기를 정할 수 있습니다. 다음은 가로 크기가 500px인 간단한 표입니다. <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>CSS</title> <style> table { width: 500px; } td { padding: 10px; border: 1px solid #666666; } </style> </head> <body> <table> <tr> <td class="c1">HAHAHA</td> <td class="c2">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean nec mollis nulla. Phasellus lacinia tempus mauris eu laoreet. Proin gravida velit dictum dui consequat malesuada.</td> </tr> </table> </body> </html> 표 ...

CSS / 애니메이션 / animation / @keyframes - 모양의 변화를 정하는 속성

CSS / 애니메이션 / animation / @keyframes - 모양의 변화를 정하는 속성

@keyframes @keyframes로 어떤 모양에서 어떤 모양으로 변할 지 정합니다. IE는 버전 10 이상에서 사용할 수 있습니다. 문법 @keyframes name { 0% { ... } n% { ... } 100% { ... } } name : 애니메이션의 이름을 정합니다. 0% : 시작할 때의 모양을 정합니다. 0% 대신 from을 사용해도 ...

CSS / CSS로 문자열 자르기 - 한 줄인 경우, 여러 줄인 경우

CSS / CSS로 문자열 자르기 - 한 줄인 경우, 여러 줄인 경우

웹페이지에 출력하는 문자열의 길이는 서버단에서 조절하는 게 보통입니다. 하지만, 어떤 경우에는 그게 불가능할 수 있습니다. 이미 전송 받은 문자열을 잘라야 하는 상황이 생길 수 있습니다. CSS를 이용하여 문자열의 일부만 보여주는 방법을 소개해드립니다. 한 줄인 경우 예제 문자열이 길면 다음처럼 화면 끝에서 줄바꿈되는 것이 기본 모양입니다. <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>CSS</title> <style> p.a { font-family: sans-serif; font-size: 20px; } </style> </head> <body> <p class="a">Lorem ipsum dolor sit ...

CSS / border-style / 테두리 모양을 정하는 속성

CSS / border-style / 테두리 모양을 정하는 속성

개요 border-style은 테두리(border)의 모양을 정하는 속성입니다. 기본값 : none 상속 : No 애니메이션 : No 버전 : CSS Level 1 border-style은 border-top-style, border-right-style, border-bottom-style, border-left-style의 축약형입니다. 문법 border-style:none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset | initial | inherit initial : 기본값으로 설정합니다. inherit : 부모 요소의 속성값을 상속받습니다. initial과 ...

CSS / letter-spacing, word-spacing / 글자 사이 간격, 단어 사이 간격

CSS / letter-spacing, word-spacing / 글자 사이 간격, 단어 사이 간격

letter-spacing, word-spacing 글자 사이의 간격은 letter-spacing으로, 단어 사이의 간격은 word-spacing으로 정합니다. 값이 커지면 간격이 커집니다. 값에는 음수를 넣을 수 있습니다. 음수를 값으로 하는 경우 글자가 겹칠 수 있습니다. 예제 값의 변화에 따른 간격의 변화를 보여주는 예제입니다. 글자 사이의 간격을 변화시키면 단어 사이의 간격도 변합니다. 단어 사이의 간격을 변화시켜도 글자 사이의 간격은 변하지 않습니다. <!doctype html> <html lang="ko"> <head> ...

CSS / columns / 다단으로 만들기

CSS / columns / 다단으로 만들기

columns columns는 다단으로 만드는 속성입니다. 단의 최소 가로 크기와 단의 최대 개수가 속성의 값입니다. 기본값은 auto로, 값을 입력하지 않으면 auto로 처리합니다. IE는 버전 10 이상을 지원합니다. 예제 1 문단을 3단으로 만듭니다. 단의 최소 가로 크기가 설정되지 않았으므로 균등한 크기로 단이 만들어집니다. <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>CSS</title> <style> .jb { columns : 3; } </style> </head> <body> <p class="jb">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean ...

CSS / calc() - 속성값을 사칙연산으로 정할 수 있게 하는 함수

CSS / calc() - 속성값을 사칙연산으로 정할 수 있게 하는 함수

개요 calc()는 괄호 안의 식을 계산한 결과를 속성값으로 사용하게 해주는 함수입니다. 예를 들어 font-size: calc( 10px + 10px ); 는 글자 크기를 20px로 만듭니다. 버전 : CSS Level 3 문법 연산자 +는 덧셈, -는 뺄셈, *는 곱셈, /는 나눗셈입니다. 곱셈과 나눗셈의 좌우에는 공백이 없어도 됩니다. 하지만, 덧셈과 뺄셈의 좌우에는 공백이 있어야 합니다. 계산 순서 왼쪽에서 오른쪽으로 계산합니다. 곱셈과 나눗셈을 먼저 하고, 덧셈과 뺄셈은 ...

CSS / CSS / 선택자(Selector) / 가상 요소와 가상 클래스 순서

CSS / CSS / 선택자(Selector) / 가상 요소와 가상 클래스 순서

가상 요소를 이용하면 특정 요소 앞에 문자열이나 이미지를 넣을 수 있습니다. HTML을 변경하지 않고 요소를 추가할 수 있는 유용한 선택자입니다. 다음은 가상 요소를 이용하여 Hello라는 문자열을 추가한 예제입니다. <!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>CSS</title> <style> ...

CSS 강좌