buttons.less
600 lines
| 10.2 KiB
| text/x-less
|
LessCssLexer
r1 | ||||
//BUTTONS | ||||
button, | ||||
.btn, | ||||
input[type="button"] { | ||||
-webkit-appearance: none; | ||||
display: inline-block; | ||||
margin: 0 @padding/3 0 0; | ||||
padding: @button-padding; | ||||
text-align: center; | ||||
font-size: @basefontsize; | ||||
line-height: 1em; | ||||
font-family: @text-light; | ||||
text-decoration: none; | ||||
text-shadow: none; | ||||
Liviu
|
r3598 | color: @grey2; | ||
r1 | background-color: white; | |||
background-image: none; | ||||
border: none; | ||||
Liviu
|
r3598 | .border ( @border-thickness-buttons, @grey5 ); | ||
r1 | .border-radius (@border-radius); | |||
cursor: pointer; | ||||
white-space: nowrap; | ||||
-webkit-transition: background .3s,color .3s; | ||||
-moz-transition: background .3s,color .3s; | ||||
-o-transition: background .3s,color .3s; | ||||
transition: background .3s,color .3s; | ||||
Liviu
|
r3570 | box-shadow: @button-shadow; | ||
-webkit-box-shadow: @button-shadow; | ||||
r1 | ||||
a { | ||||
display: block; | ||||
margin: 0; | ||||
padding: 0; | ||||
color: inherit; | ||||
text-decoration: none; | ||||
&:hover { | ||||
text-decoration: none; | ||||
} | ||||
} | ||||
&:focus, | ||||
&:active { | ||||
outline:none; | ||||
} | ||||
r4122 | ||||
r1 | &:hover { | |||
Liviu
|
r3598 | color: @rcdarkblue; | ||
r4122 | background-color: @grey6; | |||
} | ||||
&.btn-active { | ||||
color: @rcdarkblue; | ||||
background-color: @grey6; | ||||
r1 | } | |||
r3798 | .icon-remove { | |||
r1 | display: none; | |||
} | ||||
//disabled buttons | ||||
//last; overrides any other styles | ||||
&:disabled { | ||||
opacity: .7; | ||||
cursor: auto; | ||||
background-color: white; | ||||
color: @grey4; | ||||
text-shadow: none; | ||||
} | ||||
r1769 | &.no-margin { | |||
margin: 0 0 0 0; | ||||
} | ||||
r4122 | ||||
r3882 | ||||
r1 | } | |||
.btn-default { | ||||
Liviu
|
r3576 | border: @border-thickness solid @grey5; | ||
r1 | background-image: none; | |||
Liviu
|
r3576 | color: @grey2; | ||
r1 | ||||
a { | ||||
Liviu
|
r3576 | color: @grey2; | ||
r1 | } | |||
&:hover, | ||||
&.active { | ||||
Liviu
|
r3576 | color: @rcdarkblue; | ||
background-color: @white; | ||||
.border ( @border-thickness, @grey4 ); | ||||
r1 | ||||
a { | ||||
Liviu
|
r3576 | color: @grey2; | ||
r1 | } | |||
} | ||||
&:disabled { | ||||
Liviu
|
r3598 | .border ( @border-thickness-buttons, @grey5 ); | ||
r1406 | background-color: transparent; | |||
r1 | } | |||
r3882 | &.btn-active { | |||
color: @rcdarkblue; | ||||
background-color: @white; | ||||
.border ( @border-thickness, @rcdarkblue ); | ||||
} | ||||
r1 | } | |||
.btn-primary, | ||||
.btn-small, /* TODO: anderson: remove .btn-small to not mix with the new btn-sm */ | ||||
.btn-success { | ||||
.border ( @border-thickness, @rcblue ); | ||||
background-color: @rcblue; | ||||
color: white; | ||||
a { | ||||
color: white; | ||||
} | ||||
&:hover, | ||||
&.active { | ||||
.border ( @border-thickness, @rcdarkblue ); | ||||
color: white; | ||||
background-color: @rcdarkblue; | ||||
a { | ||||
color: white; | ||||
} | ||||
} | ||||
&:disabled { | ||||
background-color: @rcblue; | ||||
} | ||||
} | ||||
.btn-secondary { | ||||
&:extend(.btn-default); | ||||
background-color: white; | ||||
&:focus { | ||||
outline: 0; | ||||
} | ||||
&:hover { | ||||
&:extend(.btn-default:hover); | ||||
} | ||||
&.btn-link { | ||||
&:extend(.btn-link); | ||||
color: @rcblue; | ||||
} | ||||
&:disabled { | ||||
color: @rcblue; | ||||
background-color: white; | ||||
} | ||||
} | ||||
.btn-danger, | ||||
.revoke_perm, | ||||
.btn-x, | ||||
.form .action_button.btn-x { | ||||
.border ( @border-thickness, @alert2 ); | ||||
background-color: white; | ||||
color: @alert2; | ||||
a { | ||||
color: @alert2; | ||||
} | ||||
&:hover, | ||||
&.active { | ||||
.border ( @border-thickness, @alert2 ); | ||||
color: white; | ||||
background-color: @alert2; | ||||
a { | ||||
color: white; | ||||
} | ||||
} | ||||
i { | ||||
display:none; | ||||
} | ||||
&:disabled { | ||||
background-color: white; | ||||
color: @alert2; | ||||
} | ||||
} | ||||
r4540 | .btn-warning { | |||
.border ( @border-thickness, @alert3 ); | ||||
background-color: white; | ||||
color: @alert3; | ||||
a { | ||||
color: @alert3; | ||||
} | ||||
&:hover, | ||||
&.active { | ||||
.border ( @border-thickness, @alert3 ); | ||||
color: white; | ||||
background-color: @alert3; | ||||
a { | ||||
color: white; | ||||
} | ||||
} | ||||
i { | ||||
display:none; | ||||
} | ||||
&:disabled { | ||||
background-color: white; | ||||
color: @alert3; | ||||
} | ||||
} | ||||
r1445 | .btn-approved-status { | |||
.border ( @border-thickness, @alert1 ); | ||||
background-color: white; | ||||
color: @alert1; | ||||
} | ||||
.btn-rejected-status { | ||||
.border ( @border-thickness, @alert2 ); | ||||
background-color: white; | ||||
color: @alert2; | ||||
} | ||||
r1 | .btn-sm, | |||
.btn-mini, | ||||
.field-sm .btn { | ||||
padding: @padding/3; | ||||
} | ||||
.btn-xs { | ||||
padding: @padding/4; | ||||
} | ||||
.btn-lg { | ||||
padding: @padding * 1.2; | ||||
} | ||||
r1030 | .btn-group { | |||
display: inline-block; | ||||
.btn { | ||||
float: left; | ||||
r3882 | margin: 0 0 0 0; | |||
// first item | ||||
&:first-of-type:not(:last-of-type) { | ||||
border-radius: @border-radius 0 0 @border-radius; | ||||
} | ||||
// middle elements | ||||
&:not(:first-of-type):not(:last-of-type) { | ||||
border-radius: 0; | ||||
border-left-width: 0; | ||||
border-right-width: 0; | ||||
} | ||||
// last item | ||||
&:last-of-type:not(:first-of-type) { | ||||
border-radius: 0 @border-radius @border-radius 0; | ||||
} | ||||
&:only-child { | ||||
border-radius: @border-radius; | ||||
} | ||||
r1030 | } | |||
r3882 | ||||
r1030 | } | |||
r4101 | ||||
.btn-group-actions { | ||||
position: relative; | ||||
r4485 | z-index: 50; | |||
r4101 | ||||
&:not(.open) .btn-action-switcher-container { | ||||
display: none; | ||||
} | ||||
r4452 | ||||
.btn-more-option { | ||||
margin-left: -1px; | ||||
padding-left: 2px; | ||||
padding-right: 2px; | ||||
} | ||||
r4101 | } | |||
r4450 | .btn-action-switcher-container { | |||
r4101 | position: absolute; | |||
r4449 | top: 100%; | |||
r4450 | ||||
&.left-align { | ||||
left: 0; | ||||
} | ||||
&.right-align { | ||||
right: 0; | ||||
} | ||||
r4101 | } | |||
.btn-action-switcher { | ||||
display: block; | ||||
position: relative; | ||||
z-index: 300; | ||||
r4449 | max-width: 600px; | |||
r4101 | margin-top: 4px; | |||
margin-bottom: 24px; | ||||
font-size: 14px; | ||||
font-weight: 400; | ||||
padding: 8px 0; | ||||
background-color: #fff; | ||||
border: 1px solid @grey4; | ||||
border-radius: 3px; | ||||
box-shadow: @dropdown-shadow; | ||||
r4449 | overflow: auto; | |||
r4101 | ||||
li { | ||||
display: block; | ||||
text-align: left; | ||||
list-style: none; | ||||
padding: 5px 10px; | ||||
} | ||||
li .action-help-block { | ||||
font-size: 10px; | ||||
line-height: normal; | ||||
color: @grey4; | ||||
} | ||||
} | ||||
r1 | .btn-link { | |||
background: transparent; | ||||
border: none; | ||||
padding: 0; | ||||
color: @rcblue; | ||||
&:hover { | ||||
background: transparent; | ||||
border: none; | ||||
color: @rcdarkblue; | ||||
} | ||||
r1192 | //disabled buttons | |||
//last; overrides any other styles | ||||
r1 | &:disabled { | |||
r1192 | opacity: .7; | |||
cursor: auto; | ||||
background-color: white; | ||||
r1 | color: @grey4; | |||
r1192 | text-shadow: none; | |||
r1 | } | |||
// TODO: johbo: Check if we can avoid this, indicates that the structure | ||||
// is not yet good. | ||||
// lisa: The button CSS reflects the button HTML; both need a cleanup. | ||||
&.btn-danger { | ||||
color: @alert2; | ||||
&:hover { | ||||
r4543 | color: darken(@alert2, 30%); | |||
r1 | } | |||
&:disabled { | ||||
color: @alert2; | ||||
} | ||||
} | ||||
} | ||||
.btn-social { | ||||
&:extend(.btn-default); | ||||
margin: 5px 5px 5px 0px; | ||||
r3257 | min-width: 160px; | |||
r1 | } | |||
// TODO: johbo: check these exceptions | ||||
.links { | ||||
.btn + .btn { | ||||
margin-top: @padding; | ||||
} | ||||
} | ||||
.action_button { | ||||
display:inline; | ||||
margin: 0; | ||||
padding: 0 1em 0 0; | ||||
font-size: inherit; | ||||
color: @rcblue; | ||||
border: none; | ||||
r1769 | border-radius: 0; | |||
r1 | background-color: transparent; | |||
r1769 | &.last-item { | |||
border: none; | ||||
padding: 0 0 0 0; | ||||
} | ||||
r1 | &:last-child { | |||
border: none; | ||||
r1769 | padding: 0 0 0 0; | |||
r1 | } | |||
&:hover { | ||||
color: @rcdarkblue; | ||||
background-color: transparent; | ||||
border: none; | ||||
} | ||||
r4291 | .noselect | |||
r1 | } | |||
r4291 | ||||
r1 | .grid_delete { | |||
.action_button { | ||||
border: none; | ||||
} | ||||
} | ||||
r4540 | input[type="submit"].btn-warning { | |||
&:extend(.btn-warning); | ||||
&:focus { | ||||
outline: 0; | ||||
} | ||||
&:hover { | ||||
&:extend(.btn-warning:hover); | ||||
} | ||||
&.btn-link { | ||||
&:extend(.btn-link); | ||||
color: @alert3; | ||||
&:disabled { | ||||
color: @alert3; | ||||
background-color: transparent; | ||||
} | ||||
} | ||||
&:disabled { | ||||
.border ( @border-thickness-buttons, @alert3 ); | ||||
background-color: white; | ||||
color: @alert3; | ||||
opacity: 0.5; | ||||
} | ||||
} | ||||
r1 | // TODO: johbo: Form button tweaks, check if we can use the classes instead | |||
input[type="submit"] { | ||||
&:extend(.btn-primary); | ||||
&:focus { | ||||
outline: 0; | ||||
} | ||||
&:hover { | ||||
&:extend(.btn-primary:hover); | ||||
} | ||||
&.btn-link { | ||||
&:extend(.btn-link); | ||||
color: @rcblue; | ||||
&:disabled { | ||||
color: @rcblue; | ||||
background-color: transparent; | ||||
} | ||||
} | ||||
&:disabled { | ||||
.border ( @border-thickness-buttons, @rcblue ); | ||||
background-color: @rcblue; | ||||
color: white; | ||||
Liviu
|
r3598 | opacity: 0.5; | ||
r1 | } | |||
} | ||||
input[type="reset"] { | ||||
&:extend(.btn-default); | ||||
// TODO: johbo: Check if this tweak can be avoided. | ||||
background: transparent; | ||||
&:focus { | ||||
outline: 0; | ||||
} | ||||
&:hover { | ||||
&:extend(.btn-default:hover); | ||||
} | ||||
&.btn-link { | ||||
&:extend(.btn-link); | ||||
color: @rcblue; | ||||
&:disabled { | ||||
border: none; | ||||
} | ||||
} | ||||
&:disabled { | ||||
.border ( @border-thickness-buttons, @rcblue ); | ||||
background-color: white; | ||||
color: @rcblue; | ||||
} | ||||
} | ||||
input[type="submit"], | ||||
input[type="reset"] { | ||||
&.btn-danger { | ||||
&:extend(.btn-danger); | ||||
r1030 | ||||
r1 | &:focus { | |||
outline: 0; | ||||
} | ||||
r1030 | ||||
r1 | &:hover { | |||
&:extend(.btn-danger:hover); | ||||
} | ||||
r1030 | ||||
r1 | &.btn-link { | |||
&:extend(.btn-link); | ||||
color: @alert2; | ||||
&:hover { | ||||
color: darken(@alert2,30%); | ||||
} | ||||
} | ||||
&:disabled { | ||||
color: @alert2; | ||||
background-color: white; | ||||
} | ||||
} | ||||
&.btn-danger-action { | ||||
.border ( @border-thickness, @alert2 ); | ||||
background-color: @alert2; | ||||
color: white; | ||||
a { | ||||
color: white; | ||||
} | ||||
&:hover { | ||||
background-color: darken(@alert2,20%); | ||||
} | ||||
&.active { | ||||
.border ( @border-thickness, @alert2 ); | ||||
color: white; | ||||
background-color: @alert2; | ||||
a { | ||||
color: white; | ||||
} | ||||
} | ||||
&:disabled { | ||||
background-color: white; | ||||
color: @alert2; | ||||
} | ||||
} | ||||
} | ||||
r3757 | ||||
.button-links { | ||||
float: left; | ||||
display: inline; | ||||
margin: 0; | ||||
padding-left: 0; | ||||
list-style: none; | ||||
text-align: right; | ||||
li { | ||||
} | ||||
li.active { | ||||
background-color: @grey6; | ||||
.border ( @border-thickness, @grey4 ); | ||||
} | ||||
} | ||||