83 lines
2.3 KiB
SCSS
83 lines
2.3 KiB
SCSS
@import 'mixins_and_variables_and_functions';
|
|
|
|
.description {
|
|
ul,
|
|
ol {
|
|
/* We're changing list-style-position to inside because the default of
|
|
* outside doesn't move negative margin to the left of the bullet. */
|
|
list-style-position: inside;
|
|
}
|
|
|
|
li {
|
|
position: relative;
|
|
/* In the browser, the li element comes after (to the right of) the bullet point, so hovering
|
|
* over the left of the bullet point doesn't trigger a row hover. To trigger hovering on the
|
|
* left, we're applying negative margin here to shift the li element left. */
|
|
margin-inline-start: -1rem;
|
|
padding-inline-start: 2.5rem;
|
|
|
|
.drag-icon {
|
|
position: absolute;
|
|
inset-block-start: 0.3rem;
|
|
inset-inline-start: 1rem;
|
|
}
|
|
|
|
/* The inside bullet aligns itself to the bottom, which we see when text to the right of
|
|
* a multi-line list item wraps. We fix this by aligning it to the top, and excluding
|
|
* other elements. Targeting ::marker doesn't seem to work, instead we exclude custom elements
|
|
* or anything with a class */
|
|
> *:not(gl-emoji, code, [class]) {
|
|
vertical-align: top;
|
|
}
|
|
|
|
/* The inside bullet is treated like an element inside the li element, so when we have a
|
|
* multi-paragraph list item, the text doesn't start on the right of the bullet because
|
|
* it is a block level p element. We make it inline to fix this. */
|
|
> p:first-of-type {
|
|
display: inline-block;
|
|
max-width: calc(100% - 1.5rem);
|
|
}
|
|
|
|
/* We fix the other paragraphs not indenting to the
|
|
* right of the bullet due to the inside bullet. */
|
|
p ~ a,
|
|
p ~ blockquote,
|
|
p ~ code,
|
|
p ~ details,
|
|
p ~ dl,
|
|
p ~ h1,
|
|
p ~ h2,
|
|
p ~ h3,
|
|
p ~ h4,
|
|
p ~ h5,
|
|
p ~ h6,
|
|
p ~ hr,
|
|
p ~ ol,
|
|
p ~ p,
|
|
p ~ table:not(.code), /* We need :not(.code) to override typography.scss */
|
|
p ~ ul,
|
|
p ~ .markdown-code-block {
|
|
margin-inline-start: 1rem;
|
|
}
|
|
}
|
|
|
|
ul.task-list {
|
|
> li.task-list-item {
|
|
/* We're using !important to override the same selector in typography.scss */
|
|
margin-inline-start: -1rem !important;
|
|
padding-inline-start: 2.5rem;
|
|
|
|
> input.task-list-item-checkbox {
|
|
position: static;
|
|
vertical-align: middle;
|
|
margin-block-start: -2px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.is-ghost {
|
|
opacity: 0.3;
|
|
pointer-events: none;
|
|
}
|