Buttons

CSS만을 이용한 버튼과 백그라운드 이미지를 버튼 길이의 확장성을 고려하여 제작한
예제를 소개 합니다.

CSS만을 이용한 버튼
Button class="" Description
btn 기본 버튼으로 과 사용시엔 의미로 사용하면 적절하다.
btn confirm 파란색 톤의 컬러는 확인, 적용 행동에 사용됩니다.
btn info 제공된 정보를 선택적으로 사용자에게 노출시킬때 사용됩니다.
btn warning 주황색은 경고성 동작임을 알리는데 사용됩니다.
btn danger 붉은색은 위험성 있고 혹은 되돌릴 수 없는 동작에 사용됩니다.
참고 : https://twitter.github.com/bootstrap

CSS3가 나오기 전에는 대부분의 버튼들은 백그라운드 이미지를 사용해서 표현하였으나, 최근에는 CSS3의 지원이 확장되어 CSS만으로 입체감 있는 깔끔한 표현이 가능하고, 정적 컨텐츠의 리퀘스트도 줄일 수 있어서 이미지의 많은 부분은 CSS가 대체 하고 있습니다.

CSS3 속성을 이용하여 버튼을 제작할 때 유의할 점은 CSS3를 제한적으로 지원하는 또는 지원하지 않는 브라우저(IE8이하)에서도
시각적인 부분과 동작상에 문제가 되지 않도록 제작하는게 중요합니다!

HTML
        
        
        Confirm
      

위에 나열한 class를 기재하여 미리 선언해둔 버튼스타일을 적용 할 수 있습니다.

CSS
        .btn { 
          padding: 3px 5px; background: #f5f5f5; border: solid 1px #b3b3b3; font-size: 11px; border-radius: 4px; cursor: pointer;
          box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05); 
          background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
          background-image: -ms-linear-gradient(top, #ffffff, #e6e6e6);
          background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
          background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
          background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
          background-image: linear-gradient(top, #ffffff, #e6e6e6);
          background-repeat: repeat-x;
          
          filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
          filter: progid:dximagetransform.microsoft.gradient(enabled=false);
          border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); text-decoration: none;
        }
        .btn:hover { background-image: none !important; }
        .btn.confirm { 
          background-color: #0074CC; *background-color: #0055cc;
          background-image: -ms-linear-gradient(top, #0088cc, #0055cc);
          background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0055cc));
          background-image: -webkit-linear-gradient(top, #0088cc, #0055cc);
          background-image: -o-linear-gradient(top, #0088cc, #0055cc);
          background-image: -moz-linear-gradient(top, #0088cc, #0055cc);
          background-image: linear-gradient(top, #0088cc, #0055cc);
          background-repeat: repeat-x;
          border-color: #0055cc #0055cc #003580;
          border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
          filter: progid:dximagetransform.microsoft.gradient(startColorstr='#0088cc', endColorstr='#0055cc', GradientType=0);
          filter: progid:dximagetransform.microsoft.gradient(enabled=false);
        }
        .btn.confirm:hover { background-color: #0055CC; }
        .btn.info {
          background-color: #49AFCD; *background-color: #2f96b4;
          background-image: -ms-linear-gradient(top, #5bc0de, #2f96b4);
          background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
          background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
          background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
          background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
          background-image: linear-gradient(top, #5bc0de, #2f96b4);
          background-repeat: repeat-x;
          border-color: #2f96b4 #2f96b4 #1f6377;
          border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
          filter: progid:dximagetransform.microsoft.gradient(startColorstr='#5bc0de', endColorstr='#2f96b4', GradientType=0);
          filter: progid:dximagetransform.microsoft.gradient(enabled=false);
        }
        .btn.info:hover { background-color: #2F96B4; }
        .btn.success {
          background-color: #5bb75b; *background-color: #51a351;
          background-image: -ms-linear-gradient(top, #62c462, #51a351);
          background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
          background-image: -webkit-linear-gradient(top, #62c462, #51a351);
          background-image: -o-linear-gradient(top, #62c462, #51a351);
          background-image: -moz-linear-gradient(top, #62c462, #51a351);
          background-image: linear-gradient(top, #62c462, #51a351);
          background-repeat: repeat-x;
          border-color: #51a351 #51a351 #387038;
          border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
          filter: progid:dximagetransform.microsoft.gradient(startColorstr='#62c462', endColorstr='#51a351', GradientType=0);
          filter: progid:dximagetransform.microsoft.gradient(enabled=false);
        }
        .btn.success:hover { background-color: #51A351; }
        .btn.warning {
          background-color: #faa732; *background-color: #f89406;
          background-image: -ms-linear-gradient(top, #fbb450, #f89406);
          background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
          background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
          background-image: -o-linear-gradient(top, #fbb450, #f89406);
          background-image: -moz-linear-gradient(top, #fbb450, #f89406);
          background-image: linear-gradient(top, #fbb450, #f89406);
          background-repeat: repeat-x;
          border-color: #f89406 #f89406 #ad6704;
          border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
          filter: progid:dximagetransform.microsoft.gradient(startColorstr='#fbb450', endColorstr='#f89406', GradientType=0);
          filter: progid:dximagetransform.microsoft.gradient(enabled=false);
        }
        .btn.warning:hover { background-color: #F89406; }
        .btn.danger { 
          background-color: #da4f49; *background-color: #bd362f;
          background-image: -ms-linear-gradient(top, #ee5f5b, #bd362f);
          background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
          background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
          background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
          background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
          background-image: linear-gradient(top, #ee5f5b, #bd362f);
          background-repeat: repeat-x;
          border-color: #bd362f #bd362f #802420;
          border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
          filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ee5f5b', endColorstr='#bd362f', GradientType=0);
          filter: progid:dximagetransform.microsoft.gradient(enabled=false);
        }
        .btn.danger:hover { background-color: #BD362F; }
        .btn.confirm, .btn.info, .btn.success, .btn.warning, .btn.danger { color: #fff; }
      


백그라운드 이미지를 적용한 버튼

버튼에 백그라운드 이미지를 적용할 시, 텍스트가 길이에 대한 확장성을 고려하여 제작 하여야 합니다.

Medium size
medium button blue medium button green medium button gray 너비 확장성 유의
Large size
large button blue large button green large button gray 너비 확장성 유의

HTML
  		
  		medium button blue
  		medium button green
  		
  		
  		large button blue
  		large button green
  	
CSS
      /* 
       * Button 
       */
      .button,
      .button * {
        position: relative; margin: 0; padding: 0; display: inline-block;
        text-decoration: none; border:0; font-size: 12px; white-space: nowrap;
        overflow: visible; font-weight: bold; vertical-align: top; color: #fff;
        background: url(../img/ui/buttons.gif) no-repeat;
      }
      .button { margin-right: 4px; }
      .button *{ left: 4px; cursor: pointer; _cursor:hand; }
       
      /* medium size */
      .button.medium-blue, .button.medium-blue *,
      .button.medium-green, .button.medium-green *,
      .button.medium-gray, .button.medium-gray * { height: 26px; line-height: 26px; }
      .button.medium-blue  { background-position: left -160px; }
      .button.medium-green { background-position: left -198px; }
      .button.medium-gray  { background-position: left -234px; }
      .button.medium-blue *{ padding: 0 14px 0 12px;  background-position: right -160px; }
      .button.medium-green *{ padding: 0 14px 0 12px; background-position: right -198px; }
      .button.medium-gray *{ padding: 0 14px 0 12px;  background-position: right -234px; }
       
      /* large size */
      .button.large-blue, .button.large-blue *,
      .button.large-green, .button.large-green *,
      .button.large-gray, .button.large-gray * { height: 46px; line-height: 43px; font-size: 14px; }
      .button.large-blue  { background-position: left top; }
      .button.large-green { background-position: left -51px; }
      .button.large-gray  { background-position: left -102px; }
      .button.large-blue * { padding: 0 22px 0 18px; background-position: right top; }
      .button.large-green *{ padding: 0 22px 0 18px; background-position: right -51px; }
      .button.large-gray * { padding: 0 22px 0 18px; background-position: right -102px; }
  	

사용 이미지 다운로드

History