diff options
| author | Hsieh Chin Fan <pham@topo.tw> | 2024-09-29 21:01:03 +0800 |
|---|---|---|
| committer | Hsieh Chin Fan <pham@topo.tw> | 2024-09-29 21:19:07 +0800 |
| commit | 27feb1302304eede3cdc58ffde5ce8e0f0019da4 (patch) | |
| tree | 0db88a3c17f4761470d0b3e39b3ad16e36fbe2c5 /src/css | |
| parent | 110d8890e171573adad1fe171a122dfbc89f6faa (diff) | |
feat: add submenu for map/block/layout switching
* Add general classes into MenuItem
* Use MutationObserver for data-mode
* Automatically unfocus other maps when one is focused
TODO:
* hover effect on submenu item doesn't work, why?
* shorcuts hint in selector ".folder.menu-item" not looks great
Diffstat (limited to 'src/css')
| -rw-r--r-- | src/css/index.css | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/src/css/index.css b/src/css/index.css index 221ee69..3133c5f 100644 --- a/src/css/index.css +++ b/src/css/index.css | |||
| @@ -52,7 +52,6 @@ body { | |||
| 52 | box-sizing: border-box; | 52 | box-sizing: border-box; |
| 53 | flex-direction: column; | 53 | flex-direction: column; |
| 54 | align-items: stretch; | 54 | align-items: stretch; |
| 55 | |||
| 56 | height: 100%; | 55 | height: 100%; |
| 57 | gap: 0.5em; | 56 | gap: 0.5em; |
| 58 | 57 | ||
| @@ -124,10 +123,9 @@ body { | |||
| 124 | 123 | ||
| 125 | .container__suggestion { | 124 | .container__suggestion { |
| 126 | display: flex; | 125 | display: flex; |
| 126 | overflow: hidden; | ||
| 127 | justify-content: space-between; | 127 | justify-content: space-between; |
| 128 | align-items: center; | 128 | align-items: center; |
| 129 | |||
| 130 | overflow: hidden; | ||
| 131 | height: fit-content; | 129 | height: fit-content; |
| 132 | 130 | ||
| 133 | cursor: pointer; | 131 | cursor: pointer; |
| @@ -167,13 +165,16 @@ body { | |||
| 167 | 165 | ||
| 168 | .menu-item { | 166 | .menu-item { |
| 169 | display: flex; | 167 | display: flex; |
| 168 | box-sizing: border-box; | ||
| 170 | justify-content: space-between; | 169 | justify-content: space-between; |
| 171 | |||
| 172 | padding: 0.5rem; | 170 | padding: 0.5rem; |
| 173 | 171 | ||
| 174 | z-index: 9999; | 172 | z-index: 9999; |
| 173 | text-wrap: nowrap; | ||
| 175 | 174 | ||
| 176 | cursor: pointer; | 175 | cursor: pointer; |
| 176 | border: 2px solid transparent; | ||
| 177 | border-radius: 5px; | ||
| 177 | 178 | ||
| 178 | &:hover { | 179 | &:hover { |
| 179 | background: rgb(226 232 240); | 180 | background: rgb(226 232 240); |
| @@ -181,6 +182,30 @@ body { | |||
| 181 | 182 | ||
| 182 | .info { | 183 | .info { |
| 183 | color: steelblue; | 184 | color: steelblue; |
| 185 | padding-inline: 1em; | ||
| 184 | font-weight: bold; | 186 | font-weight: bold; |
| 185 | } | 187 | } |
| 186 | } | 188 | } |
| 189 | |||
| 190 | .folder::after { | ||
| 191 | content: '⏵'; | ||
| 192 | } | ||
| 193 | |||
| 194 | .sub-menu { | ||
| 195 | width: fit-content; | ||
| 196 | |||
| 197 | position: absolute; | ||
| 198 | z-index: 100; | ||
| 199 | |||
| 200 | border: 2px solid gray; | ||
| 201 | border-radius: 6px; | ||
| 202 | |||
| 203 | background: white; | ||
| 204 | min-width: 6rem; | ||
| 205 | max-height: 40vh; | ||
| 206 | .menu-item { | ||
| 207 | margin: 0 auto; | ||
| 208 | padding-inline: 0.5em; | ||
| 209 | min-width: 5em; | ||
| 210 | } | ||
| 211 | } | ||