Less float & less html is mobile view profit

This commit is contained in:
djmaze 2021-02-08 21:19:58 +01:00
parent 004378ed8c
commit 57158bd55a
17 changed files with 71 additions and 91 deletions

View file

@ -9,10 +9,6 @@
0% { transform: scale(1); } 50% { transform: scale(1.1); } 100% { transform: scale(1); } 0% { transform: scale(1); } 50% { transform: scale(1.1); } 100% { transform: scale(1); }
} }
@keyframes bounce-me {
0% { transform: scale(1); } 50% { transform: scale(1.2); } 100% { transform: scale(1); }
}
@keyframes textLoadingAnimationKeyFrame { @keyframes textLoadingAnimationKeyFrame {
0% { opacity: 1; } 33% { opacity: 0; } 100% { opacity: 1; } 0% { opacity: 1; } 33% { opacity: 0; } 100% { opacity: 1; }
} }
@ -93,10 +89,6 @@ html.no-mobile {
opacity: 0; opacity: 0;
} }
.btn-group.dropdown.colored-toggle.open .animate-this-icon-on-open {
animation: bounce-me .5s linear;
}
.b-login-content .loginFormWrapper { .b-login-content .loginFormWrapper {
transition: all 0.3s ease-out; transition: all 0.3s ease-out;
} }

View file

@ -230,7 +230,7 @@
right: 0; right: 0;
left: @contacts-popup-left-width; left: @contacts-popup-left-width;
height: 31px; height: 31px;
text-align: center; text-align: right;
box-shadow: inset 0 -1px 0 #ccc; box-shadow: inset 0 -1px 0 #ccc;
.button-save-contact { .button-save-contact {

View file

@ -1,5 +1,5 @@
@folderItemPadding: 10px; @folderItemPadding: 7px;
@subPadding: 15px; @subPadding: 15px;
.b-folders { .b-folders {
@ -86,17 +86,7 @@
color: var(--folders-disabled-color, #666); color: var(--folders-disabled-color, #666);
cursor: not-allowed; cursor: not-allowed;
font-size: 14px; font-size: 14px;
border-left: 3px solid transparent;
.focused-poiner {
float: left;
display: inline-block;
background-color: transparent;
height: 100%;
width: 3px;
position: absolute;
top: 0;
left: 0;
}
.inbox-star-icon { .inbox-star-icon {
display: none; display: none;
@ -157,10 +147,7 @@
&.focused { &.focused {
background-color: #888; background-color: #888;
border-left-color: #fff;
.focused-poiner {
background-color: #fff;
}
} }
&.system { &.system {

View file

@ -21,15 +21,23 @@
background-color: #fff; background-color: #fff;
text-align: left; text-align: left;
border: 1px solid transparent; border: 1px solid transparent;
border-radius: 2px; border-radius: 3px;
position: relative;
&.user { &.user {
background-color: #fffddd; background-color: #ffd;
border-color: #fff555; border-color: #ff5;
} }
&.selected { &.selected {
background-color: #f5f5f5; background-color: #efe;
border-color: #ccc; border-color: #9c9;
}
&.selected::after {
content: "✔";
color: #080;
position: absolute;
right: 4px;
font-family: snappymail;
} }
&:hover { &:hover {
background-color: #eee; background-color: #eee;

View file

@ -7,8 +7,6 @@
.rl-left-panel-disabled #more-list-dropdown-id + .dropdown-menu { .rl-left-panel-disabled #more-list-dropdown-id + .dropdown-menu {
position: fixed; position: fixed;
top: 40px; top: 40px;
right: auto;
left: 0;
} }
.b-system-drop-down { .b-system-drop-down {

View file

@ -81,10 +81,6 @@ label.inline, span.inline {
} }
} }
.btn-group.btn-group-custom-margin > .btn + .btn {
margin-left: 0;
}
.btn { .btn {
// &:active { // &:active {
// .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.3), 0 0 0 rgba(0,0,0,.1)"); // .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.3), 0 0 0 rgba(0,0,0,.1)");

View file

@ -10,6 +10,7 @@ import { AbstractViewRight } from 'Knoin/AbstractViews';
import { KeyboardShortcutsHelpPopupView } from 'View/Popup/KeyboardShortcutsHelp'; import { KeyboardShortcutsHelpPopupView } from 'View/Popup/KeyboardShortcutsHelp';
import { AccountPopupView } from 'View/Popup/Account'; import { AccountPopupView } from 'View/Popup/Account';
import { ContactsPopupView } from 'View/Popup/Contacts';
import { Settings } from 'Common/Globals'; import { Settings } from 'Common/Globals';
@ -35,6 +36,8 @@ export class AbstractSystemDropDownUserView extends AbstractViewRight {
capaAdditionalAccounts: Settings.capa(Capa.AdditionalAccounts) capaAdditionalAccounts: Settings.capa(Capa.AdditionalAccounts)
}); });
this.allowContacts = !!AppStore.contactsIsAllowed();
this.addAccountClick = this.addAccountClick.bind(this); this.addAccountClick = this.addAccountClick.bind(this);
addEventListener('audio.stop', () => AppStore.currentAudio('')); addEventListener('audio.stop', () => AppStore.currentAudio(''));
@ -76,6 +79,12 @@ export class AbstractSystemDropDownUserView extends AbstractViewRight {
} }
} }
contactsClick() {
if (this.allowContacts) {
showScreenPopup(ContactsPopupView);
}
}
logoutClick() { logoutClick() {
rl.app.logout(); rl.app.logout();
} }

View file

@ -8,9 +8,8 @@
<div class="modal-body" style="min-height: 150px;"> <div class="modal-body" style="min-height: 150px;">
<div data-bind="foreach: languages"> <div data-bind="foreach: languages">
<label class="lang-item" data-tooltip-i18n="off" data-bind="click: function () { $root.changeLanguage(key); }, css: {'selected': selected, 'user': user}, <label class="lang-item" data-tooltip-i18n="off" data-bind="click: function () { $root.changeLanguage(key); }, css: {'selected': selected, 'user': user},
tooltip: function () { return $root.languageTooltipName(key); }"> tooltip: function () { return $root.languageTooltipName(key); },
<span class="lang-name" data-bind="text: fullName"></span> text: fullName">
<i class="icon-ok pull-right" style="color: green; margin-top: 3px;" data-bind="visible: selected"></i>
</label> </label>
</div> </div>
</div> </div>

View file

@ -3,7 +3,6 @@
css: { 'i-am-inbox': isInbox, 'selected': selected() && !isSystemFolder(), 'selectable': canBeSelected, 'hidden' : hidden, 'print-count': hasUnreadMessages, 'unread-sub': hasSubscribedUnreadMessagesSubfolders, 'system': isSystemFolder, 'anim-action-class': actionBlink }"> css: { 'i-am-inbox': isInbox, 'selected': selected() && !isSystemFolder(), 'selectable': canBeSelected, 'hidden' : hidden, 'print-count': hasUnreadMessages, 'unread-sub': hasSubscribedUnreadMessagesSubfolders, 'system': isSystemFolder, 'anim-action-class': actionBlink }">
<span class="badge pull-right count" data-bind="text: printableUnreadCount"></span> <span class="badge pull-right count" data-bind="text: printableUnreadCount"></span>
<i data-bind="css: collapsedCss()"></i> <i data-bind="css: collapsedCss()"></i>
<span class="focused-poiner"></span>
<span class="name" data-bind="text: name"></span> <span class="name" data-bind="text: name"></span>
</a> </a>
<div class="b-sub-folders" data-bind="template: { name: 'MailFolderListItem', foreach: subFolders }, css: { 'collapsed': collapsed() }"></div> <div class="b-sub-folders" data-bind="template: { name: 'MailFolderListItem', foreach: subFolders }, css: { 'collapsed': collapsed() }"></div>

View file

@ -2,7 +2,6 @@
<a class="e-link" data-bind="dropmessages: $data, css: { 'selected': selected, 'selectable': selectable, 'print-count': 0 < printableUnreadCount().length, 'anim-action-class': actionBlink, 'is-inbox': isInbox }"> <a class="e-link" data-bind="dropmessages: $data, css: { 'selected': selected, 'selectable': selectable, 'print-count': 0 < printableUnreadCount().length, 'anim-action-class': actionBlink, 'is-inbox': isInbox }">
<span class="badge pull-right count" data-bind="text: printableUnreadCount"></span> <span class="badge pull-right count" data-bind="text: printableUnreadCount"></span>
&nbsp; &nbsp;
<span class="focused-poiner"></span>
<span class="name" data-bind="text: localName()"></span> <span class="name" data-bind="text: localName()"></span>
<span class="inbox-star-icon"> <span class="inbox-star-icon">
<i class="icon-star"></i> <i class="icon-star"></i>

View file

@ -14,20 +14,17 @@
<i class="icon-left-middle"></i> <i class="icon-left-middle"></i>
</a> </a>
</div> </div>
<div class="btn-group">&nbsp;</div>
<!-- /ko --> <!-- /ko -->
<div class="btn-group" data-bind="visible: mobile && allowComposer && mobileCheckedStateHide()"> <div class="btn-group" data-bind="visible: mobile && allowComposer && mobileCheckedStateHide()">
<a class="btn buttonCompose" data-bind="click: composeClick, tooltip: 'FOLDER_LIST/BUTTON_NEW_MESSAGE', css: {'btn-warning': composeInEdit, 'btn-success': !composeInEdit()}"> <a class="btn buttonCompose" data-bind="click: composeClick, tooltip: 'FOLDER_LIST/BUTTON_NEW_MESSAGE', css: {'btn-warning': composeInEdit, 'btn-success': !composeInEdit()}">
<i class="icon-paper-plane"></i> <i class="icon-paper-plane"></i>
</a> </a>
</div> </div>
<div class="btn-group" data-bind="visible: mobileCheckedStateHide()">&nbsp;</div>
<div class="btn-group" data-bind="visible: allowReload && mobileCheckedStateHide()"> <div class="btn-group" data-bind="visible: allowReload && mobileCheckedStateHide()">
<a class="btn buttonReload" data-bind="command: reloadCommand, tooltip: 'MESSAGE_LIST/BUTTON_RELOAD'"> <a class="btn buttonReload" data-bind="command: reloadCommand, tooltip: 'MESSAGE_LIST/BUTTON_RELOAD'">
<i class="icon-spinner" data-bind="css: {'not-animated': !messageListCompleteLoadingThrottleForAnimation()}"></i> <i class="icon-spinner" data-bind="css: {'not-animated': !messageListCompleteLoadingThrottleForAnimation()}"></i>
</a> </a>
</div> </div>
<div class="btn-group" data-bind="visible: allowReload && mobileCheckedStateHide()">&nbsp;</div>
<!-- ko if: !newMoveToFolder --> <!-- ko if: !newMoveToFolder -->
<div class="btn-group dropdown colored-toggle hide-on-mobile" data-bind="visible: allowMessageListActions, registerBootstrapDropdown: true, openDropdownTrigger: moveDropdownTrigger"> <div class="btn-group dropdown colored-toggle hide-on-mobile" data-bind="visible: allowMessageListActions, registerBootstrapDropdown: true, openDropdownTrigger: moveDropdownTrigger">
<a id="move-dropdown-id" href="#" tabindex="-1" class="btn dropdown-toggle buttonMove" data-toggle="dropdown" data-bind="command: moveCommand, tooltip: 'GLOBAL/MOVE_TO'"> <a id="move-dropdown-id" href="#" tabindex="-1" class="btn dropdown-toggle buttonMove" data-toggle="dropdown" data-bind="command: moveCommand, tooltip: 'GLOBAL/MOVE_TO'">
@ -50,7 +47,6 @@
</a> </a>
</div> </div>
<!-- /ko --> <!-- /ko -->
<div class="btn-group" data-bind="visible: allowMessageListActions && mobileCheckedStateHide()">&nbsp;</div>
<div class="btn-group" data-bind="visible: allowMessageListActions && mobileCheckedStateShow()"> <div class="btn-group" data-bind="visible: allowMessageListActions && mobileCheckedStateShow()">
<a class="btn button-archive" <a class="btn button-archive"
data-bind="visible: isArchiveVisible, command: archiveCommand, tooltip: 'GLOBAL/TO_ARCHIVE'"> data-bind="visible: isArchiveVisible, command: archiveCommand, tooltip: 'GLOBAL/TO_ARCHIVE'">
@ -72,9 +68,9 @@
</div> </div>
<div class="btn-group dropdown colored-toggle" data-bind="visible: allowComposer || allowMessageListActions || allowDangerousActions, registerBootstrapDropdown: true, openDropdownTrigger: moreDropdownTrigger"> <div class="btn-group dropdown colored-toggle" data-bind="visible: allowComposer || allowMessageListActions || allowDangerousActions, registerBootstrapDropdown: true, openDropdownTrigger: moreDropdownTrigger">
<a id="more-list-dropdown-id" class="btn dropdown-toggle buttonMore" href="#" tabindex="-1" data-toggle="dropdown" data-bind="tooltip: 'GLOBAL/MORE'"> <a id="more-list-dropdown-id" class="btn dropdown-toggle buttonMore" href="#" tabindex="-1" data-toggle="dropdown" data-bind="tooltip: 'GLOBAL/MORE'">
<i class="icon-list animate-this-icon-on-open"></i> <i class="icon-list"></i>
</a> </a>
<ul class="dropdown-menu pull-right g-ui-menu" role="menu" aria-labelledby="more-list-dropdown-id"> <ul class="dropdown-menu g-ui-menu" role="menu" aria-labelledby="more-list-dropdown-id">
<div data-bind="visible: allowMessageListActions"> <div data-bind="visible: allowMessageListActions">
<li class="e-item" role="presentation" data-bind="click: listUnsetSeen, css: {'disabled': !hasCheckedOrSelectedLines()}"> <li class="e-item" role="presentation" data-bind="click: listUnsetSeen, css: {'disabled': !hasCheckedOrSelectedLines()}">
<a class="e-link menuitem" href="#" tabindex="-1"> <a class="e-link menuitem" href="#" tabindex="-1">

View file

@ -54,26 +54,32 @@
<i class="icon-mail"></i> <i class="icon-mail"></i>
</div> </div>
<div class="b-message-view-desc error" data-bind="visible: !message() && '' !== messageError() && !hasCheckedMessages()"> <div class="b-message-view-desc error" data-bind="visible: !message() && '' !== messageError() && !hasCheckedMessages(), text: messageError()">
<span class="text" data-bind="text: messageError()"></span>
</div> </div>
<div data-bind="visible: !message() && '' === messageError() && !hasCheckedMessages()" style="height: 100%"> <div class="b-message-view-desc" class="i18n" data-i18n="MESSAGE/MESSAGE_VIEW_DESC" data-bind="visible: !message() && '' === messageError() && !hasCheckedMessages()">
<div class="b-message-view-desc">
<span class="i18n" data-i18n="MESSAGE/MESSAGE_VIEW_DESC"></span>
</div> </div>
</div> <div class="message-fixed-button-toolbar" data-bind="visible: message">
<div class="btn-group" style="margin-right: -11px;">
<div class="message-fixed-button-toolbar clearfix" data-bind="visible: message"> <a class="btn btn-thin-2 btn-transparent buttonReply"
<div class="btn-group pull-right" style="margin-right: -11px;"> data-bind="visible: 'reply' === lastReplyAction() && allowComposer, command: replyCommand, tooltip: 'MESSAGE/BUTTON_REPLY'">
<div class="btn-group pull-right" data-bind="registerBootstrapDropdown: true, visible: allowComposer || allowMessageListActions || allowMessageActions"> <i class="fontastic"></i>
</a>
<a class="btn btn-thin-2 btn-transparent buttonReplyAll"
data-bind="visible: 'replyall' === lastReplyAction() && allowComposer, command: replyAllCommand, tooltip: 'MESSAGE/BUTTON_REPLY_ALL'">
<i class="fontastic"></i>
</a>
<a class="btn btn-thin-2 btn-transparent buttonForward"
data-bind="visible: 'forward' === lastReplyAction() && allowComposer, command: forwardCommand, tooltip: 'MESSAGE/BUTTON_FORWARD'">
<i class="fontastic"></i>
</a>
<div class="btn-group" data-bind="registerBootstrapDropdown: true, visible: allowComposer || allowMessageListActions || allowMessageActions" style="display: inline-block">
<a class="btn btn-thin-2 btn-transparent dropdown-toggle buttonMore" id="more-view-dropdown-id" href="#" tabindex="-1" data-toggle="dropdown" style="margin-left: -4px; margin-right: 2px" data-bind="command: messageVisibilityCommand"> <a class="btn btn-thin-2 btn-transparent dropdown-toggle buttonMore" id="more-view-dropdown-id" href="#" tabindex="-1" data-toggle="dropdown" style="margin-left: -4px; margin-right: 2px" data-bind="command: messageVisibilityCommand">
<span data-bind="visible: !allowComposer" class="fontastic"></span> <span data-bind="visible: !allowComposer" class="fontastic"></span>
<span data-bind="visible: allowComposer" class="caret"></span> <span data-bind="visible: allowComposer" class="caret"></span>
</a> </a>
<ul class="dropdown-menu g-ui-menu" role="menu" aria-labelledby="more-view-dropdown-id"> <ul class="dropdown-menu g-ui-menu right-edge" role="menu" aria-labelledby="more-view-dropdown-id">
<div data-bind="visible: allowComposer && !isDraftFolder()"> <div data-bind="visible: allowComposer && !isDraftFolder()">
<li class="e-item" role="presentation"> <li class="e-item" role="presentation">
<a class="e-link menuitem" href="#" tabindex="-1" data-bind="command: replyCommand"> <a class="e-link menuitem" href="#" tabindex="-1" data-bind="command: replyCommand">
@ -180,21 +186,9 @@
</div> </div>
</ul> </ul>
</div> </div>
<a class="btn btn-thin-2 btn-transparent buttonReply pull-right"
data-bind="visible: 'reply' === lastReplyAction() && allowComposer, command: replyCommand, tooltip: 'MESSAGE/BUTTON_REPLY'">
<i class="fontastic"></i>
</a>
<a class="btn btn-thin-2 btn-transparent buttonReplyAll pull-right"
data-bind="visible: 'replyall' === lastReplyAction() && allowComposer, command: replyAllCommand, tooltip: 'MESSAGE/BUTTON_REPLY_ALL'">
<i class="fontastic"></i>
</a>
<a class="btn btn-thin-2 btn-transparent buttonForward pull-right"
data-bind="visible: 'forward' === lastReplyAction() && allowComposer, command: forwardCommand, tooltip: 'MESSAGE/BUTTON_FORWARD'">
<i class="fontastic"></i>
</a>
</div> </div>
<div class="btn-group pull-right hide-on-mobile" data-bind="visible: isDraftFolder(), tooltip: 'MESSAGE/BUTTON_EDIT'" style="margin-right: 5px"> <div class="btn-group hide-on-mobile" data-bind="visible: isDraftFolder(), tooltip: 'MESSAGE/BUTTON_EDIT'" style="margin-right: 5px">
<a class="btn btn-success buttonEdit" data-bind="command: messageEditCommand"> <a class="btn btn-success buttonEdit" data-bind="command: messageEditCommand">
<i class="fontastic icon-white">🖉</i> <i class="fontastic icon-white">🖉</i>
</a> </a>
@ -251,7 +245,6 @@
<td> <td>
<span class="pull-right size" data-bind="text: viewSize"></span> <span class="pull-right size" data-bind="text: viewSize"></span>
<span class="from uiLabelValue" data-bind="text: viewFrom, title: viewFrom"></span> <span class="from uiLabelValue" data-bind="text: viewFrom, title: viewFrom"></span>
</div>
</td> </td>
</tr> </tr>
<tr data-bind="visible: '' !== viewTo()"> <tr data-bind="visible: '' !== viewTo()">

View file

@ -30,7 +30,7 @@
<i data-bind="css: {'icon-list': !contacts.importing() && !contacts.syncing(), <i data-bind="css: {'icon-list': !contacts.importing() && !contacts.syncing(),
'icon-spinner': contacts.importing() || contacts.syncing()}"></i> 'icon-spinner': contacts.importing() || contacts.syncing()}"></i>
</a> </a>
<ul class="dropdown-menu g-ui-menu pull-right" role="menu" aria-labelledby="contacts-more-dropdown-id"> <ul class="dropdown-menu g-ui-menu right-edge" role="menu" aria-labelledby="contacts-more-dropdown-id">
<li class="e-item" role="presentation"> <li class="e-item" role="presentation">
<a class="e-link menuitem" href="#" tabindex="-1" data-bind="initDom: importUploaderButton"> <a class="e-link menuitem" href="#" tabindex="-1" data-bind="initDom: importUploaderButton">
<i data-bind="css: {'icon-import': !contacts.importing(), 'icon-spinner': contacts.importing}"></i> <i data-bind="css: {'icon-import': !contacts.importing(), 'icon-spinner': contacts.importing}"></i>
@ -108,7 +108,15 @@
</div> </div>
</div> </div>
<div class="b-view-content-toolbar btn-toolbar" data-bind="css: {'read-only': viewReadOnly}"> <div class="b-view-content-toolbar btn-toolbar" data-bind="css: {'read-only': viewReadOnly}">
<div class="btn-group pull-right dropdown colored-toggle button-add-prop" data-bind="visible: !emptySelection(), registerBootstrapDropdown: true"> <div class="btn-group">
<button class="btn button-save-contact" data-bind="visible: !emptySelection(), command: saveCommand, css: {'dirty': watchDirty}">
<i data-bind="css: {'icon-ok': !viewSaving(), 'icon-spinner': viewSaving()}"></i>
&nbsp;&nbsp;
<span class="i18n" data-i18n="CONTACTS/BUTTON_CREATE_CONTACT" data-bind="visible: '' === viewID()"></span>
<span class="i18n" data-i18n="CONTACTS/BUTTON_UPDATE_CONTACT" data-bind="visible: '' !== viewID()"></span>
</button>
</div>
<div class="btn-group dropdown colored-toggle button-add-prop" data-bind="visible: !emptySelection(), registerBootstrapDropdown: true">
<a id="button-add-prop-dropdown-id" href="#" tabindex="-1" class="btn dropdown-toggle" data-toggle="dropdown"> <a id="button-add-prop-dropdown-id" href="#" tabindex="-1" class="btn dropdown-toggle" data-toggle="dropdown">
<span class="i18n" data-i18n="CONTACTS/ADD_MENU_LABEL"></span> <span class="i18n" data-i18n="CONTACTS/ADD_MENU_LABEL"></span>
&nbsp;&nbsp; &nbsp;&nbsp;
@ -150,15 +158,6 @@
</li>--> </li>-->
</ul> </ul>
</div> </div>
<div class="btn-group pull-right">&nbsp;</div>
<div class="btn-group pull-right">
<button class="btn button-save-contact" data-bind="visible: !emptySelection(), command: saveCommand, css: {'dirty': watchDirty}">
<i data-bind="css: {'icon-ok': !viewSaving(), 'icon-spinner': viewSaving()}"></i>
&nbsp;&nbsp;
<span class="i18n" data-i18n="CONTACTS/BUTTON_CREATE_CONTACT" data-bind="visible: '' === viewID()"></span>
<span class="i18n" data-i18n="CONTACTS/BUTTON_UPDATE_CONTACT" data-bind="visible: '' !== viewID()"></span>
</button>
</div>
</div> </div>
<div class="b-view-content" data-bind="css: {'read-only': viewReadOnly}"> <div class="b-view-content" data-bind="css: {'read-only': viewReadOnly}">
<div class="content"> <div class="content">

View file

@ -41,15 +41,20 @@
<!-- /ko --> <!-- /ko -->
<!-- /ko --> <!-- /ko -->
<!-- ko if: capaAdditionalAccounts --> <li class="e-item dividerbar" role="presentation" data-bind="visible: capaAdditionalAccounts">
<li class="e-item dividerbar" role="presentation">
<a class="e-link menuitem" href="#" tabindex="-1" data-bind="click: addAccountClick"> <a class="e-link menuitem" href="#" tabindex="-1" data-bind="click: addAccountClick">
<i class="icon-plus"></i> <i class="icon-plus"></i>
&nbsp;&nbsp; &nbsp;&nbsp;
<span class="i18n" data-i18n="TOP_TOOLBAR/BUTTON_ADD_ACCOUNT"></span> <span class="i18n" data-i18n="TOP_TOOLBAR/BUTTON_ADD_ACCOUNT"></span>
</a> </a>
</li> </li>
<!-- /ko --> <li class="e-item" role="presentation" data-bind="visible: allowSettings">
<a class="e-link menuitem" href="#" tabindex="-1" data-bind="visible: allowContacts, click: contactsClick">
<i class="icon-address-book"></i>
&nbsp;&nbsp;
<span class="i18n" data-i18n="GLOBAL/CONTACTS"></span>
</a>
</li>
<li class="e-item" role="presentation" data-bind="visible: allowSettings"> <li class="e-item" role="presentation" data-bind="visible: allowSettings">
<a class="e-link menuitem" href="#" tabindex="-1" data-bind="click: settingsClick"> <a class="e-link menuitem" href="#" tabindex="-1" data-bind="click: settingsClick">
<i class="fontastic"></i> <i class="fontastic"></i>

View file

@ -10,7 +10,7 @@
white-space: nowrap; // prevent buttons from wrapping when in tight spaces (e.g., the table on the tests page) white-space: nowrap; // prevent buttons from wrapping when in tight spaces (e.g., the table on the tests page)
} }
.btn-group:not(:first-child) { .btn-group + .btn-group {
margin-left: 3px; margin-left: 3px;
} }

View file

@ -51,7 +51,7 @@
background-clip: padding-box; background-clip: padding-box;
// Aligns the dropdown menu to right // Aligns the dropdown menu to right
&.pull-right { &.right-edge {
right: 0; right: 0;
left: auto; left: auto;
} }

View file

@ -34,12 +34,11 @@
// Give the tabs something to sit on // Give the tabs something to sit on
.nav-tabs { .nav-tabs {
border-bottom: 1px solid #ddd; border-bottom: 1px solid #ddd;
.clearfix();
} }
// Make the list-items overlay the bottom border // Make the list-items overlay the bottom border
.nav-tabs > li { .nav-tabs > li {
margin-bottom: -1px; margin-bottom: -1px;
float: left; display: inline-block;
} }
// Actual tabs (as links) // Actual tabs (as links)
.nav-tabs > li > a { .nav-tabs > li > a {
@ -49,6 +48,7 @@
line-height: @baseLineHeight; line-height: @baseLineHeight;
border: 1px solid transparent; border: 1px solid transparent;
border-radius: 4px 4px 0 0; border-radius: 4px 4px 0 0;
padding: 5px;
&:hover { &:hover {
border-color: @grayLighter @grayLighter #ddd; border-color: @grayLighter @grayLighter #ddd;
} }