Jump to content

User:Isaacl/style/discussion-threads.css: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
reduce specificity of CSS rules targeted for dark mode, to simplify reuse of common rules
add comment: bottom border colour is only specified as a fallback
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:


/* set colours for discussion thread styling */
/* Assume if a list item has a comment within it, even within a nested child list, then it corresponds to a comment */


/* light mode */
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),

#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])) ,
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start]))
{
{
--discussion-threads-style-background-colour1: rgb(98%, 99%, 100%); /* odd levels: main background colour */
background: var(--background-color-base);
--discussion-threads-style-background-colour2: rgb(98%, 99%, 100%); /* odd levels: bottom border fallback colour */
border-bottom: 2px solid var(--background-color-base);
--discussion-threads-style-alt-background-colour1: var(--background-color-base); /* even levels: main background colour */
--discussion-threads-style-alt-background-colour2: var(--background-color-base); /* even levels: bottom border fallback colour */
--discussion-threads-style-border-colour1: rgb(85%, 85%, 100%); /* left border colour */
--discussion-threads-style-border-colour2: var(--background-color-base); /* left border gap colour */
}
}

/* dark mode */

@media screen {
:where(html.skin-theme-clientpref-night) #mw-content-text
{
--discussion-threads-style-background-colour1: rgb(8%, 8%, 15%);
--discussion-threads-style-background-colour2: var(--background-color-base);
--discussion-threads-style-border-colour1: rgb(5%, 5%, 30%);
}
} /* user-selected dark colour scheme */

@media screen and (prefers-color-scheme: dark) {
:where(html.skin-theme-clientpref-os) #mw-content-text
{
--discussion-threads-style-background-colour1: rgb(8%, 8%, 15%);
--discussion-threads-style-background-colour2: var(--background-color-base);
--discussion-threads-style-border-colour1: rgb(5%, 5%, 30%);
}
} /* OS-selected dark colour scheme */


/* Assume if a list item has a comment within it, even within a nested child list, then it corresponds to a comment */

/* odd levels */


#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
Line 26: Line 49:
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start]))
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start]))
{
{
--discussion-threads-style-alt-background-colour: rgb(98%, 99%, 100%);
background: var(--discussion-threads-style-background-colour1);
background: var(--discussion-threads-style-alt-background-colour);
border-bottom: 2px solid var(--discussion-threads-style-background-colour2);
}
border-bottom: 2px solid var(--discussion-threads-style-alt-background-colour);

/* even levels */

#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])) ,
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start]))
{
background: var(--discussion-threads-style-alt-background-colour1);
border-bottom: 2px solid var(--discussion-threads-style-alt-background-colour2);
}
}


Line 34: Line 72:
#mw-content-text:not([data-discussion-threads-style-disable]) ul:has(> li span[data-mw-comment-start])
#mw-content-text:not([data-discussion-threads-style-disable]) ul:has(> li span[data-mw-comment-start])
{
{
--discussion-threads-style-border-colour1: rgb(85%, 85%, 100%);
border-left: 5px solid var(--discussion-threads-style-border-colour1);
border-left: 5px solid var(--discussion-threads-style-border-colour1);
border-image: linear-gradient(0.25turn, var(--discussion-threads-style-border-colour1) 60%, var(--background-color-base) 60%) 1 100%;
border-image: linear-gradient(0.25turn, var(--discussion-threads-style-border-colour1) 60%, var(--discussion-threads-style-border-colour2) 60%) 1 100%;
}
}

@media screen {
:where(html.skin-theme-clientpref-night)
{
--discussion-threads-style-alt-background-colour: rgb(10%, 10%, 18%);
--discussion-threads-style-border-colour1: rgb(5%, 5%, 30%);
}
} /* user-selected dark colour scheme */

@media screen and (prefers-color-scheme: dark) {
:where(html.skin-theme-clientpref-os)
{
--discussion-threads-style-alt-background-colour: rgb(10%, 10%, 18%);
--discussion-threads-style-border-colour1: rgb(5%, 5%, 30%);
}
} /* OS-selected dark colour scheme */

Latest revision as of 23:17, 18 December 2024

/* set colours for discussion thread styling */

/* light mode */

#mw-content-text
{
	--discussion-threads-style-background-colour1: rgb(98%, 99%, 100%);       /* odd levels: main background colour */
	--discussion-threads-style-background-colour2: rgb(98%, 99%, 100%);       /* odd levels: bottom border fallback colour */
	--discussion-threads-style-alt-background-colour1: var(--background-color-base);  /* even levels: main background colour */
	--discussion-threads-style-alt-background-colour2: var(--background-color-base);  /* even levels: bottom border fallback colour */
	--discussion-threads-style-border-colour1: rgb(85%, 85%, 100%);               /* left border colour */
	--discussion-threads-style-border-colour2: var(--background-color-base);      /* left border gap colour */
}

/* dark mode */

@media screen {
	:where(html.skin-theme-clientpref-night) #mw-content-text
	{
    	--discussion-threads-style-background-colour1: rgb(8%, 8%, 15%);
    	--discussion-threads-style-background-colour2: var(--background-color-base);
		--discussion-threads-style-border-colour1: rgb(5%, 5%, 30%);
    }
}  /* user-selected dark colour scheme */

@media screen and (prefers-color-scheme: dark) {
	:where(html.skin-theme-clientpref-os) #mw-content-text
	{
    	--discussion-threads-style-background-colour1: rgb(8%, 8%, 15%);
    	--discussion-threads-style-background-colour2: var(--background-color-base);
		--discussion-threads-style-border-colour1: rgb(5%, 5%, 30%);
    }
}  /* OS-selected dark colour scheme */


/* Assume if a list item has a comment within it, even within a nested child list, then it corresponds to a comment */

/* odd levels */

#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start]))
{
	background: var(--discussion-threads-style-background-colour1);
	border-bottom: 2px solid var(--discussion-threads-style-background-colour2);
}

/* even levels */

#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start]))	,
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start])),
#mw-content-text:not([data-discussion-threads-style-disable]) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl, ul) :is(dl:has(> dd span[data-mw-comment-start]), ul:has(> li span[data-mw-comment-start]))
{
	background: var(--discussion-threads-style-alt-background-colour1);
	border-bottom: 2px solid var(--discussion-threads-style-alt-background-colour2);
}

#mw-content-text:not([data-discussion-threads-style-disable]) dl:has(> dd span[data-mw-comment-start]),
#mw-content-text:not([data-discussion-threads-style-disable]) ul:has(> li span[data-mw-comment-start])
{
	border-left: 5px solid var(--discussion-threads-style-border-colour1);
	border-image: linear-gradient(0.25turn, var(--discussion-threads-style-border-colour1) 60%, var(--discussion-threads-style-border-colour2) 60%) 1 100%;
}