code.gitea.io/gitea@v1.21.7/web_src/css/markup/content.css (about) 1 .markup { 2 overflow: hidden; 3 font-size: 16px; 4 line-height: 1.5 !important; 5 word-wrap: break-word; 6 } 7 8 .markup > *:first-child { 9 margin-top: 0 !important; 10 } 11 12 .markup > *:last-child { 13 margin-bottom: 0 !important; 14 } 15 16 .markup a:not([href]) { 17 color: inherit; 18 text-decoration: none; 19 } 20 21 .markup .absent { 22 color: var(--color-red); 23 } 24 25 .markup .anchor { 26 float: left; 27 padding-right: 4px; 28 margin-left: -20px; 29 color: inherit; 30 } 31 32 .markup .anchor .svg { 33 vertical-align: middle; 34 } 35 36 .markup .anchor:focus { 37 outline: none; 38 } 39 40 .markup h1 .anchor { 41 margin-top: -2px; /* re-align to center */ 42 } 43 44 .markup h1 .anchor .svg, 45 .markup h2 .anchor .svg, 46 .markup h3 .anchor .svg, 47 .markup h4 .anchor .svg, 48 .markup h5 .anchor .svg, 49 .markup h6 .anchor .svg { 50 visibility: hidden; 51 } 52 53 .markup h1:hover .anchor .svg, 54 .markup h2:hover .anchor .svg, 55 .markup h3:hover .anchor .svg, 56 .markup h4:hover .anchor .svg, 57 .markup h5:hover .anchor .svg, 58 .markup h6:hover .anchor .svg { 59 visibility: visible; 60 } 61 62 .markup h2 .anchor .svg, 63 .markup h3 .anchor .svg, 64 .markup h4 .anchor .svg { 65 position: relative; 66 top: -2px; 67 } 68 69 .markup h1, 70 .markup h2, 71 .markup h3, 72 .markup h4, 73 .markup h5, 74 .markup h6 { 75 margin-top: 24px; 76 margin-bottom: 16px; 77 font-weight: var(--font-weight-semibold); 78 line-height: 1.25; 79 } 80 81 .markup h1 tt, 82 .markup h1 code, 83 .markup h2 tt, 84 .markup h2 code, 85 .markup h3 tt, 86 .markup h3 code, 87 .markup h4 tt, 88 .markup h4 code, 89 .markup h5 tt, 90 .markup h5 code, 91 .markup h6 tt, 92 .markup h6 code { 93 font-size: inherit; 94 } 95 96 .markup h1 { 97 padding-bottom: 0.3em; 98 font-size: 2em; 99 border-bottom: 1px solid var(--color-secondary); 100 } 101 102 .markup h2 { 103 padding-bottom: 0.3em; 104 font-size: 1.5em; 105 border-bottom: 1px solid var(--color-secondary); 106 } 107 108 .markup h3 { 109 font-size: 1.25em; 110 } 111 112 .markup h4 { 113 font-size: 1em; 114 } 115 116 .markup h5 { 117 font-size: 0.875em; 118 } 119 120 .markup h6 { 121 font-size: 0.85em; 122 color: var(--color-text-light-2); 123 } 124 125 .markup p, 126 .markup blockquote, 127 .markup details, 128 .markup ul, 129 .markup ol, 130 .markup dl, 131 .markup table, 132 .markup pre { 133 margin-top: 0; 134 margin-bottom: 16px; 135 } 136 137 .markup hr { 138 height: 4px; 139 padding: 0; 140 margin: 16px 0; 141 background-color: var(--color-secondary); 142 border: 0; 143 } 144 145 .markup ul, 146 .markup ol { 147 padding-left: 2em; 148 } 149 150 .markup ul.no-list, 151 .markup ol.no-list { 152 padding: 0; 153 list-style-type: none; 154 } 155 156 .markup .task-list-item { 157 list-style-type: none; 158 } 159 160 .markup .task-list-item p + ul { 161 margin-top: 16px; 162 } 163 164 .markup .task-list-item input[type="checkbox"] { 165 margin: 0 .3em .25em -1.4em; 166 vertical-align: middle; 167 padding: 0; 168 } 169 170 .markup .task-list-item input[type="checkbox"] + p { 171 margin-left: -0.2em; 172 display: inline; 173 } 174 175 .markup .task-list-item > p { 176 margin-inline: 16px; 177 } 178 179 .markup .task-list-item + .task-list-item { 180 margin-top: 4px; 181 } 182 183 .markup input[type="checkbox"] { 184 -webkit-appearance: none; 185 -moz-appearance: none; 186 appearance: none; 187 position: relative; 188 border: 1px solid var(--color-secondary); 189 border-radius: var(--border-radius); 190 background: var(--color-input-background); 191 height: 14px; 192 width: 14px; 193 opacity: 1 !important; /* override fomantic on edit preview */ 194 pointer-events: auto !important; /* override fomantic on edit preview */ 195 vertical-align: middle !important; /* override fomantic on edit preview */ 196 -webkit-print-color-adjust: exact; 197 color-adjust: exact; 198 } 199 200 .markup input[type="checkbox"]:not([disabled]):hover, 201 .markup input[type="checkbox"]:not([disabled]):active { 202 border-color: var(--color-primary); 203 } 204 205 .markup input[type="checkbox"]::after { 206 position: absolute; 207 left: 0; 208 top: 0; 209 bottom: 0; 210 right: 0; 211 pointer-events: none; 212 background: var(--color-text); 213 mask-size: cover; 214 -webkit-mask-size: cover; 215 } 216 217 .markup input[type="checkbox"]:checked::after { 218 content: ""; 219 mask-image: var(--checkbox-mask-checked); 220 -webkit-mask-image: var(--checkbox-mask-checked); 221 -webkit-print-color-adjust: exact; 222 color-adjust: exact; 223 } 224 225 .markup input[type="checkbox"]:indeterminate::after { 226 content: ""; 227 mask-image: var(--checkbox-mask-indeterminate); 228 -webkit-mask-image: var(--checkbox-mask-indeterminate); 229 } 230 231 .markup ul ul, 232 .markup ul ol, 233 .markup ol ol, 234 .markup ol ul { 235 margin-top: 0; 236 margin-bottom: 0; 237 } 238 239 .markup ol ol, 240 .markup ul ol { 241 list-style-type: lower-roman; 242 } 243 244 .markup li > p { 245 margin-top: 16px; 246 } 247 248 .markup li + li { 249 margin-top: 0.25em; 250 } 251 252 .markup dl { 253 padding: 0; 254 } 255 256 .markup dl dt { 257 padding: 0; 258 margin-top: 16px; 259 font-size: 1em; 260 font-style: italic; 261 font-weight: var(--font-weight-semibold); 262 } 263 264 .markup dl dd { 265 padding: 0 16px; 266 margin-bottom: 16px; 267 } 268 269 .markup blockquote { 270 margin-left: 0; 271 padding: 0 15px; 272 color: var(--color-text-light-2); 273 border-left: 4px solid var(--color-secondary); 274 } 275 276 .markup blockquote > :first-child { 277 margin-top: 0; 278 } 279 280 .markup blockquote > :last-child { 281 margin-bottom: 0; 282 } 283 284 .markup table { 285 display: block; 286 width: 100%; 287 width: max-content; 288 max-width: 100%; 289 overflow: auto; 290 } 291 292 .markup table th { 293 font-weight: var(--font-weight-semibold); 294 } 295 296 .markup table th, 297 .markup table td { 298 padding: 6px 13px !important; 299 border: 1px solid var(--color-secondary) !important; 300 } 301 302 .markup table tr { 303 border-top: 1px solid var(--color-secondary); 304 } 305 306 .markup table tr:nth-child(2n) { 307 background-color: var(--color-markup-table-row); 308 } 309 310 .markup img, 311 .markup video { 312 max-width: 100%; 313 box-sizing: initial; 314 } 315 316 /* this background ensures images can break <hr>. We can only do this on 317 cases where the background is known and not transparent. */ 318 .markup.file-view img, 319 .markup.file-view video, 320 .comment-body .markup img, /* regular comment */ 321 .comment-body .markup video, 322 .comment-content .markup img, /* code comment */ 323 .comment-content .markup video, 324 .wiki .markup img, 325 .wiki .markup video { 326 background: var(--color-box-body); 327 } 328 329 .markup img[align="right"], 330 .markup video[align="right"] { 331 padding-left: 20px; 332 } 333 334 .markup img[align="left"], 335 .markup video[align="left"] { 336 padding-right: 28px; 337 } 338 339 .markup .emoji { 340 max-width: none; 341 vertical-align: text-top; 342 } 343 344 .markup span.frame { 345 display: block; 346 overflow: hidden; 347 } 348 349 .markup span.frame > span { 350 display: block; 351 float: left; 352 width: auto; 353 padding: 7px; 354 margin: 13px 0 0; 355 overflow: hidden; 356 border: 1px solid var(--color-secondary); 357 } 358 359 .markup span.frame span img, 360 .markup span.frame span video { 361 display: block; 362 float: left; 363 } 364 365 .markup span.frame span span { 366 display: block; 367 padding: 5px 0 0; 368 clear: both; 369 color: var(--color-text); 370 } 371 372 .markup span.align-center { 373 display: block; 374 overflow: hidden; 375 clear: both; 376 } 377 378 .markup span.align-center > span { 379 display: block; 380 margin: 13px auto 0; 381 overflow: hidden; 382 text-align: center; 383 } 384 385 .markup span.align-center span img 386 .markup span.align-center span video { 387 margin: 0 auto; 388 text-align: center; 389 } 390 391 .markup span.align-right { 392 display: block; 393 overflow: hidden; 394 clear: both; 395 } 396 397 .markup span.align-right > span { 398 display: block; 399 margin: 13px 0 0; 400 overflow: hidden; 401 text-align: right; 402 } 403 404 .markup span.align-right span img, 405 .markup span.align-right span video { 406 margin: 0; 407 text-align: right; 408 } 409 410 .markup span.float-left { 411 display: block; 412 float: left; 413 margin-right: 13px; 414 overflow: hidden; 415 } 416 417 .markup span.float-left span { 418 margin: 13px 0 0; 419 } 420 421 .markup span.float-right { 422 display: block; 423 float: right; 424 margin-left: 13px; 425 overflow: hidden; 426 } 427 428 .markup span.float-right > span { 429 display: block; 430 margin: 13px auto 0; 431 overflow: hidden; 432 text-align: right; 433 } 434 435 .markup code, 436 .markup tt { 437 padding: 0.2em 0.4em; 438 margin: 0; 439 font-size: 85%; 440 white-space: break-spaces; 441 background-color: var(--color-markup-code-block); 442 border-radius: var(--border-radius); 443 } 444 445 .markup code br, 446 .markup tt br { 447 display: none; 448 } 449 450 .markup del code { 451 text-decoration: inherit; 452 } 453 454 .markup pre > code { 455 padding: 0; 456 margin: 0; 457 font-size: 100%; 458 white-space: pre-wrap; 459 word-break: break-all; 460 overflow-wrap: break-word; 461 background: transparent; 462 border: 0; 463 } 464 465 .markup .highlight { 466 margin-bottom: 16px; 467 } 468 469 .markup .highlight pre, 470 .markup pre { 471 padding: 16px; 472 font-size: 85%; 473 line-height: 1.45; 474 background-color: var(--color-markup-code-block); 475 border-radius: var(--border-radius); 476 } 477 478 .markup .highlight pre { 479 margin-bottom: 0; 480 word-break: normal; 481 } 482 483 .markup pre { 484 word-wrap: normal; 485 } 486 487 .markup pre code, 488 .markup pre tt { 489 display: inline; 490 padding: 0; 491 line-height: inherit; 492 word-wrap: normal; 493 background-color: transparent; 494 border: 0; 495 } 496 497 .markup pre code::before, 498 .markup pre code::after, 499 .markup pre tt::before, 500 .markup pre tt::after { 501 content: normal; 502 } 503 504 .markup kbd { 505 display: inline-block; 506 padding: 3px 5px; 507 font-size: 11px; 508 line-height: 10px; 509 color: var(--color-text-light); 510 vertical-align: middle; 511 background-color: var(--color-markup-code-block); 512 border: 1px solid var(--color-secondary); 513 border-radius: var(--border-radius); 514 box-shadow: inset 0 -1px 0 var(--color-secondary); 515 } 516 517 .markup .ui.list .list, 518 .markup ol.ui.list ol, 519 .markup ul.ui.list ul { 520 padding-left: 2em; 521 } 522 523 .file-revisions-btn { 524 display: block; 525 float: left; 526 margin-bottom: 2px !important; 527 padding: 11px !important; 528 margin-right: 10px !important; 529 } 530 531 .file-revisions-btn i { 532 -webkit-touch-callout: none; 533 -webkit-user-select: none; 534 user-select: none; 535 } 536 537 .markup-render { 538 display: block; 539 border: none; 540 width: 100%; 541 height: var(--height-loading); /* actual height is set in JS after loading */ 542 overflow: hidden; 543 color-scheme: normal; /* match the value inside the iframe to allow it to become transparent */ 544 } 545 546 .markup-block-error { 547 display: block !important; /* override fomantic .ui.form .error.message {display: none} */ 548 border: none !important; 549 margin-bottom: 0 !important; 550 border-bottom-left-radius: 0 !important; 551 border-bottom-right-radius: 0 !important; 552 box-shadow: none !important; 553 font-size: 85% !important; 554 white-space: pre-wrap !important; 555 padding: 0.5rem 1rem !important; 556 text-align: left !important; 557 } 558 559 .markup-block-error + pre { 560 border-top: none !important; 561 margin-top: 0 !important; 562 border-top-left-radius: 0 !important; 563 border-top-right-radius: 0 !important; 564 } 565 566 .file-view.markup.orgmode li.unchecked::before { 567 content: "[ ] "; 568 } 569 570 .file-view.markup.orgmode li.checked::before { 571 content: "[x] "; 572 } 573 574 .file-view.markup.orgmode li.indeterminate::before { 575 content: "[-] "; 576 } 577 578 /* This is only needed for <p> because they are literally acting as paragraphs, 579 * and thus having an ::before on the same line would force the paragraph to 580 * move to the next line. This can be avoided by an inline-block display that 581 * avoids that property while still having the other properties of the block 582 * display. */ 583 .file-view.markup.orgmode li.unchecked > p, 584 .file-view.markup.orgmode li.checked > p, 585 .file-view.markup.orgmode li.indeterminate > p { 586 display: inline-block; 587 }