187 lines
		
	
	
	
		
			3.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			187 lines
		
	
	
	
		
			3.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| // BUTTON STYLES
 | |
| // -------------
 | |
| 
 | |
| 
 | |
| // Base styles
 | |
| // --------------------------------------------------
 | |
| 
 | |
| // Core
 | |
| .btn {
 | |
|   display: inline-block;
 | |
|   .ie7-inline-block();
 | |
|   padding: 4px 10px 4px;
 | |
|   margin-bottom: 0; // For input.btn
 | |
|   font-size: @baseFontSize;
 | |
|   line-height: @baseLineHeight;
 | |
|   color: @grayDark;
 | |
|   text-align: center;
 | |
|   text-shadow: 0 1px 1px rgba(255,255,255,.75);
 | |
|   vertical-align: middle;
 | |
|   .buttonBackground(@btnBackground, @btnBackgroundHighlight);
 | |
|   border: 1px solid @btnBorder;
 | |
|   border-bottom-color: darken(@btnBorder, 10%);
 | |
|   .border-radius(4px);
 | |
|   @shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
 | |
|   .box-shadow(@shadow);
 | |
|   cursor: pointer;
 | |
| 
 | |
|   // Give IE7 some love
 | |
|   .ie7-restore-left-whitespace();
 | |
| }
 | |
| 
 | |
| // Hover state
 | |
| .btn:hover {
 | |
|   color: @grayDark;
 | |
|   text-decoration: none;
 | |
|   background-color: darken(@white, 10%);
 | |
|   background-position: 0 -15px;
 | |
| 
 | |
|   // transition is only when going to hover, otherwise the background
 | |
|   // behind the gradient (there for IE<=9 fallback) gets mismatched
 | |
|   .transition(background-position .1s linear);
 | |
| }
 | |
| 
 | |
| // Focus state for keyboard and accessibility
 | |
| .btn:focus {
 | |
|   .tab-focus();
 | |
| }
 | |
| 
 | |
| // Active state
 | |
| .btn.active,
 | |
| .btn:active {
 | |
|   background-image: none;
 | |
|   @shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
 | |
|   .box-shadow(@shadow);
 | |
|   background-color: darken(@white, 10%);
 | |
|   background-color: darken(@white, 15%) e("\9");
 | |
|   outline: 0;
 | |
| }
 | |
| 
 | |
| // Disabled state
 | |
| .btn.disabled,
 | |
| .btn[disabled] {
 | |
|   cursor: default;
 | |
|   background-image: none;
 | |
|   background-color: darken(@white, 10%);
 | |
|   .opacity(65);
 | |
|   .box-shadow(none);
 | |
| }
 | |
| 
 | |
| 
 | |
| // Button Sizes
 | |
| // --------------------------------------------------
 | |
| 
 | |
| // Large
 | |
| .btn-large {
 | |
|   padding: 9px 14px;
 | |
|   font-size: @baseFontSize + 2px;
 | |
|   line-height: normal;
 | |
|   .border-radius(5px);
 | |
| }
 | |
| .btn-large [class^="icon-"] {
 | |
|   margin-top: 1px;
 | |
| }
 | |
| 
 | |
| // Small
 | |
| .btn-small {
 | |
|   padding: 5px 9px;
 | |
|   font-size: @baseFontSize - 2px;
 | |
|   line-height: @baseLineHeight - 2px;
 | |
| }
 | |
| .btn-small [class^="icon-"] {
 | |
|   margin-top: -1px;
 | |
| }
 | |
| 
 | |
| // Mini
 | |
| .btn-mini {
 | |
|   padding: 2px 6px;
 | |
|   font-size: @baseFontSize - 2px;
 | |
|   line-height: @baseLineHeight - 4px;
 | |
| }
 | |
| 
 | |
| 
 | |
| // Alternate buttons
 | |
| // --------------------------------------------------
 | |
| 
 | |
| // Set text color
 | |
| // -------------------------
 | |
| .btn-primary,
 | |
| .btn-primary:hover,
 | |
| .btn-warning,
 | |
| .btn-warning:hover,
 | |
| .btn-danger,
 | |
| .btn-danger:hover,
 | |
| .btn-success,
 | |
| .btn-success:hover,
 | |
| .btn-info,
 | |
| .btn-info:hover,
 | |
| .btn-inverse,
 | |
| .btn-inverse:hover {
 | |
|   text-shadow: 0 -1px 0 rgba(0,0,0,.25);
 | |
|   color: @white;
 | |
| }
 | |
| // Provide *some* extra contrast for those who can get it
 | |
| .btn-primary.active,
 | |
| .btn-warning.active,
 | |
| .btn-danger.active,
 | |
| .btn-success.active,
 | |
| .btn-info.active,
 | |
| .btn-inverse.active {
 | |
|   color: rgba(255,255,255,.75);
 | |
| }
 | |
| 
 | |
| // Set the backgrounds
 | |
| // -------------------------
 | |
| .btn-primary {
 | |
|   .buttonBackground(@btnPrimaryBackground, @btnPrimaryBackgroundHighlight);
 | |
| }
 | |
| // Warning appears are orange
 | |
| .btn-warning {
 | |
|   .buttonBackground(@btnWarningBackground, @btnWarningBackgroundHighlight);
 | |
| }
 | |
| // Danger and error appear as red
 | |
| .btn-danger {
 | |
|   .buttonBackground(@btnDangerBackground, @btnDangerBackgroundHighlight);
 | |
| }
 | |
| // Success appears as green
 | |
| .btn-success {
 | |
|   .buttonBackground(@btnSuccessBackground, @btnSuccessBackgroundHighlight);
 | |
| }
 | |
| // Info appears as a neutral blue
 | |
| .btn-info {
 | |
|   .buttonBackground(@btnInfoBackground, @btnInfoBackgroundHighlight);
 | |
| }
 | |
| // Inverse appears as dark gray
 | |
| .btn-inverse {
 | |
|   .buttonBackground(@btnInverseBackground, @btnInverseBackgroundHighlight);
 | |
| }
 | |
| 
 | |
| 
 | |
| // Cross-browser Jank
 | |
| // --------------------------------------------------
 | |
| 
 | |
| button.btn,
 | |
| input[type="submit"].btn {
 | |
| 
 | |
|   // Firefox 3.6 only I believe
 | |
|   &::-moz-focus-inner {
 | |
|     padding: 0;
 | |
|     border: 0;
 | |
|   }
 | |
| 
 | |
|   // IE7 has some default padding on button controls
 | |
|   *padding-top: 2px;
 | |
|   *padding-bottom: 2px;
 | |
|   &.btn-large {
 | |
|     *padding-top: 7px;
 | |
|     *padding-bottom: 7px;
 | |
|   }
 | |
|   &.btn-small {
 | |
|     *padding-top: 3px;
 | |
|     *padding-bottom: 3px;
 | |
|   }
 | |
|   &.btn-mini {
 | |
|     *padding-top: 1px;
 | |
|     *padding-bottom: 1px;
 | |
|   }
 | |
| }
 |