X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/067cb9c5b7b020da6dda398773cd7236fa3b51f2..refs/pull/4103/head:/resources/sass/_forms.scss diff --git a/resources/sass/_forms.scss b/resources/sass/_forms.scss index 535bc54ea..b7fc52f7d 100644 --- a/resources/sass/_forms.scss +++ b/resources/sass/_forms.scss @@ -7,7 +7,8 @@ @include lightDark(color, #666, #AAA); display: inline-block; font-size: $fs-m; - padding: $-xs*1.5; + padding: $-xs*1.8; + height: 40px; width: 250px; max-width: 100%; @@ -29,6 +30,10 @@ } } +.input-fill-width { + width: 100% !important; +} + .fake-input { @extend .input-base; overflow: auto; @@ -55,17 +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; - width: 50%; - max-width: 50%; - } &.fullscreen { position: fixed; top: 0; @@ -75,6 +69,25 @@ } } +.markdown-editor-wrap { + border-top: 1px solid #DDD; + border-bottom: 1px solid #DDD; + @include lightDark(border-color, #ddd, #000); + position: relative; + flex: 1; +} +.markdown-editor-wrap + .markdown-editor-wrap { + flex-basis: 50%; + flex-shrink: 0; + flex-grow: 0; +} + +.markdown-panel-divider { + width: 2px; + @include lightDark(background-color, #ddd, #000); + cursor: col-resize; +} + @include smaller-than($m) { #markdown-editor { flex-direction: column; @@ -83,16 +96,11 @@ 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; } .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, @@ -107,34 +115,64 @@ } } -.markdown-display { - margin-inline-start: -1px; -} - .markdown-editor-display { - background-color: #FFFFFF; + background-color: #fff; body { - background-color: #FFFFFF; + display: block; + background-color: #fff; padding-inline-start: 16px; - pmargin-inline-end: 16px; + padding-inline-end: 16px; } [drawio-diagram]:hover { outline: 2px solid var(--color-primary); } } +html.markdown-editor-display.dark-mode { + background-color: #222; + body { + background-color: #222; + } +} + .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); flex: none; - &:after { - content: ''; - display: block; - clear: both; + @include whenDark { + button { + color: #AAA; + } + } +} + +.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); } } @@ -172,7 +210,7 @@ table.form-table { max-width: 100%; td { overflow: hidden; - padding: $-xxs/2 0; + padding: math.div($-xxs, 2) 0; } } @@ -181,6 +219,20 @@ input[type="color"], input[type="password"], select, textarea { @extend .input-base; } +select { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + background: url("data:image/svg+xml;utf8,"); + background-size: 10px 12px; + background-position: calc(100% - 20px) 64%; + background-repeat: no-repeat; + + @include rtl { + background-position: 20px 70%; + } +} + input[type=date] { width: 190px; } @@ -206,7 +258,6 @@ input[type=color] { border-radius: 2px; display: inline-block; border: 2px solid currentColor; - opacity: 0.6; overflow: hidden; fill: currentColor; .svg-icon { @@ -231,6 +282,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,9 +344,10 @@ input[type=color] { } } -.form-group[collapsible] { +.form-group.collapsible { padding: 0 $-m; - border: 1px solid #DDD; + border: 1px solid; + @include lightDark(border-color, #DDD, #000); border-radius: 4px; .collapse-title { margin-inline-start: -$-m; @@ -320,20 +381,18 @@ input[type=color] { } } -.inline-input-style { +.title-input input[type="text"] { display: block; width: 100%; padding: $-s; -} - -.title-input input[type="text"] { - @extend .inline-input-style; margin-top: 0; font-size: 2em; + height: auto; } .title-input.page-title { font-size: 0.8em; + @include lightDark(background-color, #fff, #333); .input { border: 0; margin-bottom: -1px; @@ -342,6 +401,7 @@ input[type=color] { max-width: 840px; margin: 0 auto; border: none; + height: auto; } } @@ -352,23 +412,26 @@ input[type=color] { } .description-input textarea { - @extend .inline-input-style; + display: block; + width: 100%; + padding: $-s; font-size: $fs-m; color: #666; - width: 100%; + height: auto; } div[editor-type="markdown"] .title-input.page-title input[type="text"] { max-width: 100%; + border-radius: 0; } .search-box { max-width: 100%; position: relative; - button { + button[tabindex="-1"] { background-color: transparent; border: none; - fill: #666; + @include lightDark(color, #666, #AAA); padding: 0; cursor: pointer; position: absolute; @@ -381,9 +444,11 @@ div[editor-type="markdown"] .title-input.page-title input[type="text"] { } input { display: block; + padding: $-xs * 1.5; padding-inline-start: $-l + 4px; width: 300px; max-width: 100%; + height: auto; } &.flexible input { width: 100%; @@ -424,4 +489,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); +} + +input.shortcut-input { + width: auto; + max-width: 120px; + height: auto; } \ No newline at end of file