1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-07-30 22:34:53 +00:00
seahub/media/css/seahub_react.css

1051 lines
19 KiB
CSS
Raw Normal View History

2018-09-15 09:47:09 +00:00
/**
* CONTENTS
*
* Font Icons
* sf2-icon-xx ...........seafile-font2
*
*
* Helper
* common class ..........common class
*
* UI Widgets(ui widgets)
* topbar button
* caret
* loading
* popover
* op-icon
* account
* quota
* nav, nav-pills
* side-panel
2018-09-15 09:47:09 +00:00
* about-dialog
* notifications
* sf-popover
* go-back
* top-logo
* table-list
* dropdown-menu
* empty-tip
* more-btn
* list-operation
2018-10-15 07:51:29 +00:00
* prompt-message
2018-09-15 09:47:09 +00:00
*/
2018-08-06 10:29:12 +00:00
/****** sf2-icon-xx ********/
@font-face {
font-family: 'seafile-font2';
src:url('sf_font2/seafile-font2.eot');
src:url('sf_font2/seafile-font2.eot?#iefix') format('embedded-opentype'),
url('sf_font2/seafile-font2.woff') format('woff'),
url('sf_font2/seafile-font2.ttf') format('truetype'),
url('sf_font2/seafile-font2.svg#seafile-font2') format('svg');
font-weight: normal;
font-style: normal;
}
[class^="sf2-icon-"],
[class*=" sf2-icon-"] {
font-family: 'seafile-font2';
speak: none;
font-weight: normal;
font-variant: normal;
text-transform: none;
-webkit-font-smoothing: antialiased;
}
.sf2-icon-wrench:before { content:"\e001"; }
.sf2-icon-clock:before { content:"\e002"; }
.sf2-icon-bell:before { content:"\e003"; }
.sf2-icon-delete:before { content:"\e006"; }
.sf2-icon-monitor:before { content:"\e007"; }
.sf2-icon-download:before { content:"\e008"; }
.sf2-icon-group:before { content:"\e00c"; }
.sf2-icon-link:before { content:"\e00e"; }
2018-08-06 10:29:12 +00:00
.sf2-icon-user:before { content:"\e00f"; }
.sf2-icon-organization:before { content:"\e010"; }
.sf2-icon-share:before { content:"\e011"; }
2018-08-06 10:29:12 +00:00
.sf2-icon-star:before { content:"\e012"; }
2018-09-19 01:57:17 +00:00
.sf2-icon-wiki-view:before { content:"\e013"; }
.sf2-icon-history:before { content:"\e014"; }
.sf2-icon-cog1:before { content:"\e015"; }
2018-09-19 01:57:17 +00:00
.sf2-icon-trash:before { content:"\e016"; }
.sf2-icon-edit:before { content:"\e018"; }
2018-09-29 07:47:53 +00:00
.sf2-icon-caret-down:before { content:"\e01a"; }
.sf2-icon-x1:before { content:"\e01d"; }
.sf2-icon-minus:before {content:"\e01c"}
.sf2-icon-confirm:before {content:"\e01e"}
.sf2-icon-cancel:before {content:"\e01f"}
.sf2-icon-user2:before { content:"\e020"; }
.sf2-icon-grid-view:before { content:"\e025"; }
.sf2-icon-list-view:before { content:"\e026"; }
.sf2-icon-copy:before {content:"\e028"}
.sf2-icon-move:before {content:"\e029"}
.sf2-icon-menu:before { content: "\e031"; }
.sf2-icon-more:before { content: "\e032"; }
2018-12-08 04:12:05 +00:00
.sf2-icon-x3:before {content:"\e035";}
.sf2-icon-close:before { content:"\e035"; }
.sf2-icon-two-columns:before { content:"\e036"; }
.sf2-icon-tag:before {content:"\e037"}
2018-08-06 10:29:12 +00:00
/* common class and element style*/
a { color:#eb8205; }
a:hover { color:#eb8205; }
.vam { vertical-align:middle; }
.flex-auto { flex:auto; }
.flex-1 { flex:1; }
.hide { display:none; }
.error { color:red; }
2018-08-06 10:29:12 +00:00
.no-deco,
.no-deco:hover,
.no-deco:focus {
text-decoration:none;
}
.ellipsis {
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}
.left-zero {
left: 0px !important;
}
2018-08-30 07:10:52 +00:00
ul,ol,li {
padding:0;
margin:0;
}
2018-08-06 10:29:12 +00:00
2018-09-15 09:47:09 +00:00
.sf-heading {
font-size: 1rem;
color: #322;
font-weight: normal;
line-height: 1.5;
}
.text-left {
text-align: left;
}
.text-right {
text-align: right;
}
.a-simulate {
color: #eb8205 !important;
text-decoration: none;
font-weight: normal;
cursor: pointer;
}
.a-simulate:hover {
text-decoration: underline;
}
.flex-right {
justify-content: flex-end;
}
.flex-direction-row {
flex-direction: row;
}
.sf-font {
color: #eb8205 !important;
text-decoration: none;
font-weight: normal;
}
2018-11-19 07:13:38 +00:00
.avatar-with-tooltip {
cursor: pointer;
}
.user-select-none {
-moz-user-select:none;
-webkit-user-select:none;
-ms-user-select:none;
-khtml-user-select:none;
user-select: none;
}
2018-12-11 03:20:40 +00:00
.dialog-list-container { /*for content is list dialog*/
height: 20rem;
overflow: auto;
}
2018-09-15 09:47:09 +00:00
/* UI Widget */
2018-08-06 10:29:12 +00:00
/**** caret ****/
.outer-caret,
.inner-caret {
height:0;
width:0;
border-width:14px 14px 0; /* default: arrow to the bottom */
border-style:dashed solid; /* 'dashed' for firefox */
border-color:#CBCBCB transparent;
z-index:100;
margin:0 auto;
}
.inner-caret {
border-top-color:#fff;
position:relative;
top:-15px;
left:-14px;
}
.up-outer-caret,
.up-outer-caret .inner-caret {
border-width:0 10px 10px;
}
.up-outer-caret .inner-caret {
border-bottom-color:#fff;
top:1px;
left:-10px;
2018-08-06 10:29:12 +00:00
}
.up-outer-caret {
position:absolute;
top:-11px;
}
/** loading **/
2018-08-10 09:05:29 +00:00
@-moz-keyframes loading {
0% {
-moz-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-moz-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@-webkit-keyframes loading {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes loading {
0% {
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-moz-transform: rotate(360deg);
-ms-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
transform: rotate(360deg);
}
}
2018-08-06 10:29:12 +00:00
.loading-icon {
display:inline-block;
width:26px;
height:26px;
border:2px solid #eee;
border-left-color:#aaa;
border-radius:50%;
-moz-animation:loading 0.9s infinite linear;
-webkit-animation:loading 0.9s infinite linear;
animation:loading 0.9s infinite linear;
}
.loading-tip {
display:block;
margin:1em auto;
}
/** op-icon **/
.op-icon {
font-size:20px;
line-height:1;
color:#888;
cursor:pointer;
margin-right:3px;
vertical-align:middle;
}
.op-icon.sf2-x,
.op-icon.sf2-x:hover {
color:#f89a68;
}
.op-icon.sf2-x:hover,
.op-icon.sf2-x:focus {
2018-12-06 06:39:21 +00:00
border-bottom: 0.125rem solid #f89a68;;
}
2018-08-06 10:29:12 +00:00
/** Account info **/
#account {
position:relative;
}
#my-info {
display:inline-block;
color:#d6d6d6;
cursor:pointer;
}
2018-10-15 07:51:29 +00:00
2018-08-06 10:29:12 +00:00
#account .avatar {
vertical-align:middle;
border-radius:1000px;
2018-10-15 07:51:29 +00:00
margin-right: 0.25rem;
2018-08-06 10:29:12 +00:00
}
@media (max-width:767px) {
#account {
margin:5px 0 0 10px;
}
.account-toggle {
font-size:22px;
line-height:1;
color:#999;
margin-top:8px;
}
}
.account-popup .avatar {
float:left;
}
.account-popup .txt {
margin-left:45px;
line-height: 36px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
2018-08-06 10:29:12 +00:00
}
.account-popup {
right:0;
top:52px;
font-size:13px;
}
.account-popup .outer-caret {
top:-10px;
right:16px;
}
.account-popup .sf-popover-con {
padding:0;
}
.account-popup .item {
display:block;
padding:8px 18px;
border-bottom:1px solid #ddd;
}
.account-popup a.item {
color:#333;
font-weight:normal;
}
.account-popup a.item:hover {
background:#fafafa;
text-decoration:none;
}
#account .manage {
position:absolute;
left:60px;
top:-16px;
}
#account .manage .a:hover {
text-decoration:none;
}
/** quota in account popover **/
#quota-bar {
display:block;
height:1em;
border:1px solid #ddd;
margin:5px 0;
border-radius:2px;
overflow:hidden;/* for usage > 100% */
}
#quota-bar .usage {
display:inline-block;
height:100%;
vertical-align:top;
}
#quota-usage {
background:#ddd;
}
#notifications .sf2-icon-bell {
font-size:24px;
line-height:1;
color:#999;
}
@media (max-width:767px) {
.cur-view-toolbar .mobile-icon {
color:#999;
line-height:1.63;
font-size:22px;
margin-right:8px;
}
}
a.op-icon:focus {
outline:none;
text-decoration:none;
}
.op-icon:hover {/** for <a> **/
color:#888;
text-decoration:none;
}
/* sf-nav-link */
.nav .nav-item {
padding: 0;
}
.nav .nav-item .nav-link{
padding: 0.5rem 0;
margin-right: 0.5rem;
color: #8A948F;
font-weight: normal;
transition: none;
2018-08-06 10:29:12 +00:00
}
.nav .nav-item .nav-link.active {
color: #eb8205;
text-decoration: none;
border-bottom: 0.125rem solid #eb8205;
}
.nav-pills .nav-item .nav-link {
padding: 0.25rem;
color: #333;
}
.nav-pills .nav-item .nav-link:hover {
background-color: #feefb8;
}
.nav-pills .nav-item .nav-link.active {
background-color: #feac74;
color: #fff;
border: none;
}
/* side-panel */
.side-panel {
user-select: none;
height:100%;
}
.side-nav {
flex:auto;
display:flex;
flex-direction:column;
justify-content:space-between; /* make .side-nav-footer on the bottom */
overflow:hidden; /* for ff */
}
.side-nav:hover {
overflow-y:auto;
}
2018-08-06 10:29:12 +00:00
.side-nav-con {
overflow:hidden;
padding:20px;
}
2018-08-06 10:29:12 +00:00
.side-nav-con:hover {
overflow-y:auto;
}
2018-08-06 10:29:12 +00:00
.side-nav-footer {
display:flex;
flex-shrink:0;
padding:12px 20px 16px;
background:#f8f8f8;
border-top:1px solid #eee;
font-size: 13px;
2018-08-06 10:29:12 +00:00
}
2018-08-06 10:29:12 +00:00
.side-nav-footer .item {
color:#666;
font-weight: normal;
margin-right:10px;
}
2018-08-06 10:29:12 +00:00
.side-nav-footer .last-item {
margin-left:auto;
}
2018-12-06 06:39:21 +00:00
.side-nav-con>.nav {
margin-bottom: 1rem;
2018-08-06 10:29:12 +00:00
}
.side-nav-con .nav .nav-item,
.side-nav-con .nav .nav-item .nav-link {
display: block;
padding-right: 0;
margin-right: 0;
2018-08-06 10:29:12 +00:00
}
2018-12-06 06:39:21 +00:00
.side-nav-con .active .sharp,
.side-nav-con .active .nav-text {
font-weight: bold;
}
.side-nav-con .active [class^="sf2-icon-"],
.side-nav-con .active .sharp {
color: #fff;
2018-08-06 10:29:12 +00:00
}
2018-12-06 06:39:21 +00:00
.side-nav-con [class^="sf2-icon-"] {
2018-08-06 10:29:12 +00:00
display:inline-block;
width:2.625rem;
margin-right:0.325rem;
2018-08-06 10:29:12 +00:00
text-align:center;
vertical-align:middle;
font-size:1.5rem;
2018-08-06 10:29:12 +00:00
line-height:1;
color:#999;
}
2018-09-13 06:26:39 +00:00
2018-12-06 06:39:21 +00:00
.side-nav-con .sharp {
display:inline-block;
width:2.625rem;
margin-right:0.25rem;
text-align:right;
color:#aaa;
}
2018-12-06 06:39:21 +00:00
.side-nav-con .toggle-icon {
margin-right: 0.25rem;
height: 1.5rem;
2018-09-13 06:26:39 +00:00
display: flex;
align-items: center;
justify-content: center;
color:#999;
2018-09-13 06:26:39 +00:00
}
2018-12-06 06:39:21 +00:00
.side-nav-con .draft-info {
position: relative;
line-height: 1.5rem;
}
2018-12-06 06:39:21 +00:00
.side-nav-con .draft-info .badge {
right: -1.5rem;
}
.side-nav-con .sub-nav {
display: block;
overflow: hidden;
2018-08-06 10:29:12 +00:00
}
.side-nav-con .sub-nav .nav-link {
padding: 0;
display: block;
font-size: 0.875rem;
line-height: 1.5rem;
}
2018-08-30 07:10:52 +00:00
.side-panel-slide {
transition: all .3s ease-in-out;
}
2018-09-15 09:47:09 +00:00
2018-08-30 07:10:52 +00:00
.side-panel-slide-up {
transition: all .3s ease-in-out;
height: 0;
}
2018-08-06 10:29:12 +00:00
#notifications {
position:relative;
2018-08-30 07:10:52 +00:00
width: 32px;
}
#notifications .no-deco {
position: relative;
display: block;
width: 100%;
height: 100%;
}
#notifications .sf2-icon-bell {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
2018-08-06 10:29:12 +00:00
}
@media (max-width: 390px) {
#notifications {
margin-left:8px;
}
}
/* about dialog */
.about-content {
min-width: 280px;
padding-top: 20px;
text-align: center;
}
2018-09-15 09:47:09 +00:00
/* notifications */
#notifications .title {
line-height: 1.5;
font-size: 1rem;
color: #322;
font-weight: normal;
}
2018-08-30 07:10:52 +00:00
#notifications .sf2-icon-bell {
font-size:24px;
line-height:1;
color:#999;
}
#notifications .num {
position:absolute;
color:#fff;
font-size:12px;
line-height:1;
padding:1px 2px;
background:#feac74;
border:1px solid #cb8a5d;
top:0;
left:15px;
}
#notice-popover {
top:38px;
right:-12px;
}
#notice-popover .outer-caret {
right:18px;
}
#notice-popover a {
font-weight:normal;
}
#notice-popover li {
padding:9px 0 3px;
border-bottom:1px solid #dfdfe1;
}
#notice-popover li.unread {
background:#f5f5f7;
padding-right:10px;
padding-left:8px;
border-left:2px solid #feac74;
margin:0 -10px;
}
#notice-popover .avatar {
border-radius:1000px;
float:left;
}
#notice-popover .brief {
margin-left:40px;
margin-bottom: 1rem;
font-size: 0.8125rem;
line-height: 1.5rem;
2018-08-30 07:10:52 +00:00
}
#notice-popover .time {
margin:0;
2018-08-30 07:10:52 +00:00
color:#999;
text-align:right;
font-size: 0.8125rem;
line-height: 1.5rem;
2018-08-30 07:10:52 +00:00
clear:both;
}
#notice-popover .view-all {
display:block;
padding:7px 0;
text-align:center;
color:#a4a4a4;
}
#notice-popover .sf-popover-close {
position: absolute;
right: 10px;
top: 5px;
}
/**** sf-popover ****/ /* e.g. top notice popup, group members popup */
.sf-popover-container {
position:relative;
}
.sf-popover {
width:240px;
background:#fff;
border:1px solid #c9c9c9;
border-radius:3px;
box-shadow:0 0 4px #ccc;
position:absolute;
z-index: 20;
}
.sf-popover-hd {
padding:5px 0 3px;
border-bottom:1px solid #dfdfe1;
margin:0 10px;
}
.sf-popover-title {
text-align:center;
}
.sf-popover-close {
font-size:16px;
color:#b9b9b9;
margin:4px 0 0;
}
.sf-popover-con {
padding:0 10px;
overflow:auto;
}
2018-09-12 09:01:48 +00:00
/* for go-back */
.go-back {
font-size: 25px;
padding-right: 0.75rem;
color:#ccc;
}
.go-back:hover {
color:#ff9933;
text-decoration: none;
}
2018-09-15 09:47:09 +00:00
/* basic layout */
.side-panel-top {
padding: .5rem 1rem;
}
@media (max-width: 767px) {
.side-panel-top {
border-right:1px solid #eee;
}
}
.side-panel-close {
margin:10px 0 0 auto;
}
.panel-top {
padding:.5rem 1rem;
background:#f4f4f7;
border-bottom: 1px solid #e8e8e8;
2018-09-15 09:47:09 +00:00
display:flex;
flex-shrink:0;
}
/* begin top logo */
.top-logo {
display: flex;
justify-content: space-between;
flex: 1;
}
/* end top logo */
.panel-heading {
position: relative;
padding: .5rem 1rem;
width: 100%;
height: 2.5rem;
font-size: 1rem;
font-weight: normal;
line-height: 1.5;
text-align: center;
}
.side-nav-toggle {
margin-right:0.9375rem;
height: 1.875rem;
line-height: 1.875rem;
font-size:1.5rem;
color:#999;
cursor: pointer;
}
/* begin path navigation */
.path-containter { /* for the real path */
2018-11-22 03:05:47 +00:00
font-size: 1rem;
word-break: break-all;
}
.path-split {
display: inline-block;
padding: 0 5px;
color: #818a91;
}
.path-link {
color: #eb8205 !important;
text-decoration: none;
}
.path-link:hover {
cursor: pointer;
text-decoration: underline !important;
}
/* end path navigation */
/* begin main table list style */
2018-11-22 03:05:47 +00:00
table {
width: 100%;
2018-11-14 02:55:11 +00:00
table-layout: fixed;
}
2018-11-22 03:05:47 +00:00
table th, table td {
padding: 5px 3px;
border-bottom: 1px solid #eee;
}
table th {
padding-top: 1rem;
text-align: left;
font-weight: normal;
font-size: 13px;
line-height: 1.6;
color: #9c9c9c;
}
2018-11-22 03:05:47 +00:00
table td {
color: #333;
font-size: 14px;
word-break: break-all;
}
2018-11-22 03:05:47 +00:00
table .select,
table .star,
table .icon {
position: relative;
text-align: center;
}
2018-11-22 03:05:47 +00:00
table .icon img {
width: 1.5rem;
height: 1.5rem;
}
2018-11-22 03:05:47 +00:00
table .dir-icon {
position: relative;
}
2018-10-13 09:07:54 +00:00
2018-11-22 03:05:47 +00:00
table .star {
cursor: pointer;
}
2018-11-22 03:05:47 +00:00
table .star .empty {
color: #d0d0d0;
}
table .rename-container input {
box-sizing: content-box;
padding: 2px 3px;
2018-12-11 10:34:31 +00:00
width: 15rem;
height: 22px;
line-height: 19px;
border-radius: 2px;
word-wrap: break-word;
vertical-align: middle;
border: 1px solid #ccc;
}
2018-11-22 03:05:47 +00:00
table .rename-container input:focus {
background-color: #fff;
border-color: #1991eb;
outline: 0;
box-shadow: 0 0 0 2px rgba(70, 127, 207, 0.25);
}
2018-11-22 03:05:47 +00:00
table .rename-container button {
margin-left: 0.25rem;
padding: 5px 6px;
font-size: 1rem;
line-height: 1;
color: #666;
min-width: 0;
}
2018-11-22 03:05:47 +00:00
table .rename-container .confirm {
color: green;
}
2018-11-22 03:05:47 +00:00
table .dir-icon .locked {
position: absolute;
width: 1rem;
height: 1rem;
top: 50%;
left: 50%;
}
2018-11-22 03:05:47 +00:00
table .menu-toggle {
text-align: center;
cursor: pointer;
}
2018-11-22 03:05:47 +00:00
.tr-highlight {
background-color: #f8f8f8;
}
/* end table list style */
/* begin dropdown-menu style */
.dropdown-menu {
min-width: 8rem;
}
.dropdown-item {
cursor: pointer;
}
/* end dropdown-menu style */
/* begin tip */
.empty-tip {
margin: auto 1rem;
padding: 30px 40px;
background-color: #FAFAFA;
border: solid 1px #DDD;
border-radius: 3px;
box-shadow: inset 0 0 8px #EEE;
margin-top: 5.5em;
}
.empty-tip h2 {
font-size: 1.25rem;
text-align: center;
color: #222;
font-weight: bold;
}
.err-message,
2018-11-22 03:26:00 +00:00
.err-message h2{
color: red;
}
/* end tip */
/* begin more component */
.list-show-more {
padding: 0.25rem 0.75rem;
line-height: 2rem;
text-align: center;
color: #eb8205;
cursor: pointer;
}
.list-show-more:hover {
background-color: #eee;
}
.list-show-more .more-message {
font-size: 0.875rem;
color: #888;
text-decoration: underline;
}
/* end more component */
/* begin operation menu */
.operations {
display: flex;
}
.operations .operation-group {
list-style: none;
}
.operation-group .operation-group-item {
display: inline-block;
color: #f89a68;
margin-right: 0.5rem;
}
.operation-group-item i {
font-style: normal;
font-size: 1.25rem;
line-height: 1;
cursor: pointer;
vertical-align: middle;
}
.operation-group-item i:hover {
2018-11-01 10:40:18 +00:00
padding-bottom: 0.125rem;
border-bottom: 0.125rem solid #f89a68;
}
.operation-group-item .sf-dropdown-toggle {
font-size: 0.85rem;
color: #888;
}
.operation-group-item .sf-dropdown-toggle:hover {
text-decoration: none;
}
/* end operaton menu */
2018-10-15 07:51:29 +00:00
.cur-view-path .tab-tabs-nav {
font-size:15px;
list-style: none;
}
.tab-tabs-nav .tab {
float:left;
border:0;
background:none;
}
.tab-tabs-nav .tab .a {
color:#8A948F;
font-weight:normal;
padding:.3em 0;
margin-right:0.6em;
}
.tab-tabs-nav .ui-state-active .a {
color:#DD4B39;
border-bottom:2px solid #DD4B39;
}
.tab-tabs-nav .tab .a:hover {
color:#DD4B39;
}
.cur-view-path .tab-tabs-nav .ui-state-active .a,
.cur-view-path .tab-tabs-nav .a:hover {
color:#eb8205;
text-decoration:none;
border-bottom-color:#eb8205;
}
2018-10-25 06:42:53 +00:00
2018-11-13 08:39:13 +00:00
/* begin file-tag */
.tag-list {
position: relative;
}
.tag-list .file-tag {
margin-left: 0.25rem;
cursor: pointer;
}
.tag-list .file-tag:first-child {
margin-left: 0;
}
.tag-list-stacked .file-tag{
margin-left: -0.5rem;
box-shadow: 0 0 0 2px #fff;
cursor: pointer;
}
.file-tag {
position: relative;
display: inline-block;
width: 1rem;
height: 1rem;
border-radius: 50%;
}
/* end file-tag */
.dirent-item.tag-list {
display: flex;
align-items: center;
}
.item-meta-info {
display: inline-block;
margin-right: 8px;
font-size: 12px;
color: #666;
}
2018-11-30 09:18:41 +00:00
.item-operation-menu-toggle-icon {
display: inline-block;
margin-top: 4px;
font-size: 12px;
}
.mobile-operation-menu-bg-layer {
position: fixed;
left: 0;
right: 0;
top: 0;
bottom: 0;
background: #000;
opacity: 0.1;
z-index: 3;
}
.mobile-operation-menu {
position: fixed;
left: 0;
right: 0;
bottom: 0;
padding: .5em 0;
background: #fff;
text-align: center;
z-index: 4;
}
2018-12-11 06:05:10 +00:00
.wiki-list-table td {
line-height: 1.5rem;
}