mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 14:53:58 -04:00
Some documentation pages contain long C API signatures that can exceed the content width and cause page-wide horizontal scroll overflow. Apply contained horizontal scrolling to C API description blocks and keep their signature rows on one line. This preserves signature formatting while preventing them from breaking page layout. Contained horizontal scrolling is preferred over wrapping here because code fidelity is the priority. These blocks are intended to remain representative of the code itself. Wrapping distorts spacing and line structure, which affects fidelity, creates misleading renderings, and reduces readability. Examples: https://docs.kernel.org/6.15/driver-api/regulator.html https://docs.kernel.org/6.15/userspace-api/fwctl/fwctl-cxl.html Signed-off-by: Rito Rhymes <rito@ritovision.com> Assisted-by: Codex:GPT-5.4 Tested-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Message-ID: <20260323153342.33447-1-rito@ritovision.com>
188 lines
4.6 KiB
CSS
188 lines
4.6 KiB
CSS
/* SPDX-License-Identifier: GPL-2.0 */
|
|
/*
|
|
* CSS tweaks for the Alabaster theme
|
|
*/
|
|
|
|
/* Shrink the headers a bit */
|
|
div.body h1 { font-size: 180%; }
|
|
div.body h2 { font-size: 150%; }
|
|
div.body h3 { font-size: 130%; }
|
|
div.body h4 { font-size: 110%; }
|
|
|
|
/* toctree captions are styled like h2 */
|
|
div.toctree-wrapper p.caption[role=heading] { font-size: 150%; }
|
|
|
|
/* Tighten up the layout slightly */
|
|
div.body { padding: 0 15px 0 10px; }
|
|
div.sphinxsidebarwrapper { padding: 1em 0.4em; }
|
|
div.sphinxsidebar { font-size: inherit;
|
|
max-height: 100%;
|
|
overflow-y: auto; }
|
|
/* Tweak document margins and don't force width */
|
|
div.document {
|
|
margin: 20px 10px 0 10px;
|
|
width: auto;
|
|
}
|
|
|
|
/* Size the logo appropriately */
|
|
img.logo {
|
|
width: 104px;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
/* The default is to use -1em, wich makes it override text */
|
|
li { text-indent: 0em; }
|
|
|
|
/*
|
|
* Parameters for the display of function prototypes and such included
|
|
* from C source files.
|
|
*/
|
|
dl.function, dl.struct, dl.enum { margin-top: 2em; background-color: #ecf0f3; }
|
|
/* indent lines 2+ of multi-line function prototypes */
|
|
dl.function dt { margin-left: 10em; text-indent: -10em; }
|
|
/*
|
|
* Preserve C API signatures on one line and apply contained horizontal
|
|
* scrolling to prevent them from exceeding their container width and
|
|
* breaking page layout.
|
|
*/
|
|
dl.c { overflow-x: auto; overflow-y: hidden; }
|
|
dl.c > dt.sig.sig-object { white-space: nowrap; }
|
|
dt.sig-object { font-size: larger; }
|
|
div.kernelindent { margin-left: 2em; margin-right: 4em; }
|
|
|
|
/*
|
|
* Parameters for the display of function prototypes and such included
|
|
* from Python source files.
|
|
*/
|
|
dl.py { margin-top: 2em; background-color: #ecf0f3; }
|
|
dl.py.class { margin-left: 2em; text-indent: -2em; padding-left: 2em; }
|
|
dl.py.method, dl.py.attribute { margin-left: 2em; text-indent: -2em; }
|
|
dl.py li, pre { text-indent: 0em; padding-left: 0 !important; }
|
|
|
|
/*
|
|
* Tweaks for our local TOC
|
|
*/
|
|
div.kerneltoc li.toctree-l1 { font-size: smaller;
|
|
text-indent: -1em;
|
|
margin-left: 1em; }
|
|
div.kerneltoc li.current > a {font-weight: bold; }
|
|
div.kerneltoc li.toctree-l2,li.toctree-l3 { font-size: small;
|
|
text-indent: -1em;
|
|
margin-left: 1em;
|
|
list-style-type: none;
|
|
}
|
|
div.kerneltoc li.current ul { margin-left: 0; }
|
|
div.kerneltoc { background-color: #eeeeee; }
|
|
div.kerneltoc li.current ul { background-color: white; }
|
|
|
|
/*
|
|
* The CSS magic to toggle the contents on small screens.
|
|
*/
|
|
label.kernel-toc-title { display: none; }
|
|
label.kernel-toc-title:after {
|
|
content: "[Hide]";
|
|
}
|
|
input[type=checkbox]:checked ~ label.kernel-toc-title:after {
|
|
content: "[Show]";
|
|
}
|
|
/* Hide the toggle on large screens */
|
|
input.kernel-toc-toggle { display: none; }
|
|
|
|
/*
|
|
* Show and implement the toggle on small screens.
|
|
* The 875px width seems to be wired into alabaster.
|
|
*/
|
|
@media screen and (max-width: 875px) {
|
|
label.kernel-toc-title { display: inline;
|
|
font-weight: bold;
|
|
font-size: larger; }
|
|
input[type=checkbox]:checked ~ div.kerneltoc {
|
|
display: none;
|
|
}
|
|
h3.kernel-toc-contents { display: inline; }
|
|
div.kerneltoc a { color: black; }
|
|
}
|
|
|
|
/* Language selection menu */
|
|
|
|
div.admonition {
|
|
/*
|
|
* Make sure we don't overlap notes and warnings at the top of the
|
|
* document.
|
|
*/
|
|
clear: both;
|
|
}
|
|
|
|
div.language-selection {
|
|
background: #eeeeee;
|
|
border: 1px solid #cccccc;
|
|
margin-bottom: 1em;
|
|
padding: .5em;
|
|
|
|
position: relative;
|
|
float: right;
|
|
}
|
|
|
|
div.language-selection a {
|
|
display: block;
|
|
padding: 0.5em;
|
|
color: #333333;
|
|
text-decoration: none;
|
|
}
|
|
|
|
div.language-selection ul {
|
|
display: none;
|
|
position: absolute;
|
|
|
|
/* Align with the parent div */
|
|
top: 100%;
|
|
right: 0;
|
|
margin: 0;
|
|
|
|
list-style: none;
|
|
|
|
background: #fafafa;
|
|
border: 1px solid #cccccc;
|
|
|
|
/* Never break menu item lines */
|
|
white-space: nowrap;
|
|
}
|
|
|
|
div.language-selection:hover ul {
|
|
display: block;
|
|
}
|
|
|
|
div.language-selection ul li:hover {
|
|
background: #dddddd;
|
|
}
|
|
|
|
/*
|
|
* Let long inline literals in paragraph text wrap as needed to prevent
|
|
* overflow.
|
|
*/
|
|
code.docutils.literal span.pre {
|
|
white-space: normal;
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
/* Make xrefs more universally visible */
|
|
a.reference, a.reference:hover {
|
|
border-bottom: none;
|
|
text-decoration: underline;
|
|
text-underline-offset: 0.3em;
|
|
}
|
|
|
|
/* Slightly different style for sidebar links */
|
|
div.sphinxsidebar a { border-bottom: none; }
|
|
div.sphinxsidebar a:hover {
|
|
border-bottom: none;
|
|
text-decoration: underline;
|
|
text-underline-offset: 0.3em;
|
|
}
|
|
|
|
a.manpage {
|
|
font-style: normal;
|
|
font-weight: bold;
|
|
font-family: "Courier New", Courier, monospace;
|
|
}
|