X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/ee24635e06a8c01d751f80caba47c57f76e8989d..refs/pull/5280/head:/resources/sass/_forms.scss diff --git a/resources/sass/_forms.scss b/resources/sass/_forms.scss index e39f5414f..67df41714 100644 --- a/resources/sass/_forms.scss +++ b/resources/sass/_forms.scss @@ -13,10 +13,10 @@ max-width: 100%; &.neg, &.invalid { - border: 1px solid $negative; + border: 1px solid var(--color-negative); } &.pos, &.valid { - border: 1px solid $positive; + border: 1px solid var(--color-positive); } &.disabled, &[disabled] { background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAMUlEQVQIW2NkwAGuXbv2nxGbHEhCS0uLEUMSJgHShCKJLIEiiS4Bl8QmAZbEJQGSBAC62BuJ+tt7zgAAAABJRU5ErkJggg==); @@ -60,18 +60,6 @@ outline: 0; } } - .markdown-display, .markdown-editor-wrap { - flex: 1; - position: relative; - } - .markdown-editor-wrap { - display: flex; - flex-direction: column; - border: 1px solid #DDD; - @include lightDark(border-color, #ddd, #000); - width: 50%; - max-width: 50%; - } &.fullscreen { position: fixed; top: 0; @@ -81,6 +69,33 @@ } } +.markdown-editor-wrap { + border-top: 1px solid #DDD; + border-bottom: 1px solid #DDD; + @include lightDark(border-color, #ddd, #000); + position: relative; + flex: 1; + min-width: 0; +} +.markdown-editor-wrap + .markdown-editor-wrap { + flex-basis: 50%; + flex-shrink: 0; + flex-grow: 0; +} + +.markdown-editor-wrap .cm-editor { + flex: 1; + max-width: 100%; + border: 0; + margin: 0; +} + +.markdown-panel-divider { + width: 2px; + @include lightDark(background-color, #ddd, #000); + cursor: col-resize; +} + @include smaller-than($m) { #markdown-editor { flex-direction: column; @@ -89,16 +104,12 @@ width: 100%; max-width: 100%; flex-grow: 1; - } - #markdown-editor .editor-toolbar { - padding: 0; - } - #markdown-editor .editor-toolbar > * { - padding: $-xs $-s; + flex-basis: auto !important; + min-height: 0; } .editor-toolbar-label { float: none !important; - border-bottom: 1px solid #DDD; + @include lightDark(border-color, #DDD, #555); display: block; } .markdown-editor-wrap:not(.active) .editor-toolbar + div, @@ -109,21 +120,17 @@ #markdown-editor .markdown-editor-wrap:not(.active) { flex-grow: 0; flex: none; - min-height: 0; } } -.markdown-display { - margin-inline-start: -1px; -} - .markdown-editor-display { background-color: #fff; body { display: block; background-color: #fff; - padding-inline-start: 16px; - padding-inline-end: 16px; + padding-inline-start: 12px; + padding-inline-end: 12px; + max-width: 864px; } [drawio-diagram]:hover { outline: 2px solid var(--color-primary); @@ -138,20 +145,14 @@ html.markdown-editor-display.dark-mode { } .editor-toolbar { + height: 32px; width: 100%; - padding: $-xs $-m; font-size: 11px; line-height: 1.6; - border-bottom: 1px solid #DDD; - background-color: #EEE; - @include lightDark(background-color, #eee, #111); - @include lightDark(border-color, #ddd, #000); + border-bottom: 1px solid #CCC; + @include lightDark(background-color, #FFF, #333); + @include lightDark(border-color, #CCC, #000); flex: none; - &:after { - content: ''; - display: block; - clear: both; - } @include whenDark { button { color: #AAA; @@ -159,6 +160,30 @@ html.markdown-editor-display.dark-mode { } } +.editor-toolbar .buttons { + font-size: $fs-m; + .dropdown-menu { + padding: 0; + } + .toggle-switch { + margin: $-s 0; + } +} + +.editor-toolbar .buttons button { + font-size: .9rem; + width: 2rem; + text-align: center; + border-left: 1px solid; + @include lightDark(border-color, #DDD, #555); + svg { + margin-inline-end: 0; + } + &:hover { + @include lightDark(background-color, #DDD, #222); + } +} + label { @include lightDark(color, #666, #ddd); @@ -207,9 +232,13 @@ select { -moz-appearance: none; appearance: none; background: url("data:image/svg+xml;utf8,"); - background-size: 12px; - background-position: calc(100% - 20px) 70%; + background-size: 10px 12px; + background-position: calc(100% - 20px) 64%; background-repeat: no-repeat; + + @include rtl { + background-position: 20px 70%; + } } input[type=date] { @@ -237,7 +266,6 @@ input[type=color] { border-radius: 2px; display: inline-block; border: 2px solid currentColor; - opacity: 0.6; overflow: hidden; fill: currentColor; .svg-icon { @@ -262,6 +290,15 @@ input[type=color] { background-color: rgba(0, 0, 0, 0.05); opacity: 0.8; } + input[type=checkbox][disabled] ~ * { + opacity: 0.8; + cursor: not-allowed; + } + input[type=checkbox][disabled] ~ .custom-checkbox { + border-color: #999; + color: #999 !important; + background: #f2f2f2; + } } .toggle-switch-list { .toggle-switch { @@ -284,6 +321,7 @@ input[type=color] { } } .setting-list-label { + @include lightDark(color, #222, #DDD); color: #222; font-size: 1rem; } @@ -315,7 +353,7 @@ input[type=color] { } } -.form-group[collapsible] { +.form-group.collapsible { padding: 0 $-m; border: 1px solid; @include lightDark(border-color, #DDD, #000); @@ -352,6 +390,20 @@ input[type=color] { } } +.form-group.ambrosia-container, .form-group.ambrosia-container * { + position:absolute !important; + height:1px !important; + width:1px !important; + margin:-1px !important; + padding:0 !important; + background:transparent !important; + color:transparent !important; + border:none !important; + overflow: hidden !important; + clip: rect(0,0,0,0) !important; + white-space: nowrap !important; +} + .title-input input[type="text"] { display: block; width: 100%; @@ -361,27 +413,6 @@ input[type=color] { height: auto; } -.title-input.page-title { - font-size: 0.8em; - @include lightDark(background-color, #fff, #333); - .input { - border: 0; - margin-bottom: -1px; - } - input[type="text"] { - max-width: 840px; - margin: 0 auto; - border: none; - height: auto; - } -} - -.page-title input { - display: block; - width: 100%; - font-size: 1.4em; -} - .description-input textarea { display: block; width: 100%; @@ -391,27 +422,27 @@ input[type=color] { height: auto; } -div[editor-type="markdown"] .title-input.page-title input[type="text"] { - max-width: 100%; - border-radius: 0; +.description-input > .tox-tinymce { + border: 1px solid #DDD !important; + @include lightDark(border-color, #DDD !important, #000 !important); + border-radius: 3px; + .tox-toolbar__primary { + justify-content: end; + } } .search-box { max-width: 100%; position: relative; - button { + button[tabindex="-1"] { background-color: transparent; border: none; @include lightDark(color, #666, #AAA); padding: 0; cursor: pointer; position: absolute; - left: 8px; - top: 9px; - @include rtl { - right: 8px; - left: auto; - } + inset-inline-start: 8px; + top: 10px; } input { display: block; @@ -424,12 +455,64 @@ div[editor-type="markdown"] .title-input.page-title input[type="text"] { &.flexible input { width: 100%; } - .search-box-cancel { + button.search-box-cancel { left: auto; right: 0; } } +.contained-search-box { + display: flex; + height: 38px; + z-index: -1; + &.floating { + box-shadow: $bs-med; + border-radius: 4px; + overflow: hidden; + @include whenDark { + border: 1px solid #000; + } + } + input, button { + height: 100%; + border-radius: 0; + border: 1px solid #ddd; + @include lightDark(border-color, #ddd, #000); + margin-inline-start: -1px; + &:last-child { + border-inline-end: 0; + } + } + input { + border: 0; + flex: 5; + padding: $-xs $-s; + &:focus, &:active { + outline: 1px dotted var(--color-primary); + outline-offset: -2px; + border: 0; + } + } + button { + border: 0; + width: 48px; + border-inline-start: 1px solid #DDD; + background-color: #FFF; + @include lightDark(background-color, #FFF, #333); + @include lightDark(color, #444, #AAA); + } + button:focus { + outline: 1px dotted var(--color-primary); + outline-offset: -2px; + } + svg { + margin: 0; + } + @include smaller-than($s) { + width: 180px; + } +} + .outline > input { border: 0; border-bottom: 2px solid #DDD; @@ -460,4 +543,10 @@ div[editor-type="markdown"] .title-input.page-title input[type="text"] { .custom-file-input:focus + label { border-color: var(--color-primary); outline: 1px solid var(--color-primary); -} \ No newline at end of file +} + +input.shortcut-input { + width: auto; + max-width: 120px; + height: auto; +}