@@ -34,6 +34,8 @@ xmlns="http://www.w3.org/2000/svg" fill="black" height="18px">\
34
34
</ g></svg>');
35
35
--button-left-margin : 4px ;
36
36
--button-border-radius : 2px ;
37
+ --width-limiter-width : 960px ;
38
+ --desktop-grid-column-gap : 45px ;
37
39
}
38
40
39
41
/* See FiraSans-LICENSE.txt for the Fira Sans license. */
@@ -336,7 +338,7 @@ button#toggle-all-docs {
336
338
main {
337
339
position : relative;
338
340
flex-grow : 1 ;
339
- padding : 10px 15px 40px 45 px ;
341
+ padding : 10px 15px 40px var ( --desktop-grid-column-gap ) ;
340
342
min-width : 0 ; /* avoid growing beyond the size limit */
341
343
}
342
344
@@ -345,7 +347,7 @@ main {
345
347
}
346
348
347
349
.width-limiter {
348
- max-width : 960 px ;
350
+ max-width : var ( --width-limiter-width ) ;
349
351
margin-right : auto;
350
352
}
351
353
@@ -460,7 +462,7 @@ img {
460
462
.sidebar-resizing .sidebar {
461
463
position : fixed;
462
464
}
463
- .sidebar-resizing > body {
465
+ .sidebar-resizing . rustdoc {
464
466
padding-left : var (--resizing-sidebar-width );
465
467
}
466
468
@@ -534,7 +536,7 @@ img {
534
536
scrollbar-width : initial;
535
537
scrollbar-color : var (--scrollbar-color );
536
538
}
537
- .sidebar {
539
+ .sidebar , # TOC section , # ModNav section {
538
540
scrollbar-width : thin;
539
541
scrollbar-color : var (--scrollbar-color );
540
542
}
@@ -543,17 +545,24 @@ img {
543
545
::-webkit-scrollbar {
544
546
width : 12px ;
545
547
}
546
- .sidebar ::-webkit-scrollbar {
548
+ .sidebar ::-webkit-scrollbar ,
549
+ # TOC section ::-webkit-scrollbar ,
550
+ # ModNav section ::-webkit-scrollbar {
547
551
width : 8px ;
548
552
}
549
553
::-webkit-scrollbar-track {
550
554
-webkit-box-shadow : inset 0 ;
551
555
background-color : var (--scrollbar-track-background-color );
552
556
}
553
- .sidebar ::-webkit-scrollbar-track {
557
+ .sidebar ::-webkit-scrollbar-track ,
558
+ # TOC section ::-webkit-scrollbar-track ,
559
+ # ModNav section ::-webkit-scrollbar-track {
554
560
background-color : var (--scrollbar-track-background-color );
555
561
}
556
- ::-webkit-scrollbar-thumb , .sidebar ::-webkit-scrollbar-thumb {
562
+ ::-webkit-scrollbar-thumb ,
563
+ .sidebar ::-webkit-scrollbar-thumb ,
564
+ # TOC section ::-webkit-scrollbar-thumb ,
565
+ # ModNav section ::-webkit-scrollbar-thumb {
557
566
background-color : var (--scrollbar-thumb-background-color );
558
567
}
559
568
@@ -742,7 +751,7 @@ ul.block, .block li, .block ul {
742
751
overflow-wrap : break-word;
743
752
}
744
753
745
- .sidebar-crate + .version {
754
+ .sidebar > .version {
746
755
margin-top : -1rem ;
747
756
margin-bottom : 1rem ;
748
757
}
@@ -2006,6 +2015,111 @@ However, it's not needed with smaller screen width because the doc/code block is
2006
2015
2007
2016
/* Media Queries */
2008
2017
2018
+ /* Very-large-screen mode. */
2019
+ @supports (display : grid) and (display : contents) {
2020
+ @media (min-width : 1600px ) and (min-height : 800px ) {
2021
+ .rustdoc : not (.src ) {
2022
+ display : grid;
2023
+ grid-template-columns :
2024
+ var (--desktop-sidebar-width )
2025
+ var (--width-limiter-width )
2026
+ minmax (0 , 1fr );
2027
+ grid-template-rows : min-content 1fr ;
2028
+ grid-template-areas :
2029
+ "sidebar-title main sidebar-cratenav"
2030
+ "sidebar-modnav main sidebar-toc" ;
2031
+ grid-column-gap : var (--desktop-grid-column-gap );
2032
+ }
2033
+ .sidebar-resizing .rustdoc : not (.src ) {
2034
+ padding-left : 0 ;
2035
+ }
2036
+ .hide-sidebar .rustdoc : not (.src ) {
2037
+ grid-template-columns :
2038
+ var (--width-limiter-width )
2039
+ minmax (0 , 1fr );
2040
+ grid-template-rows : minmax (min-content, calc (64px + 0.75rem )) 1fr ;
2041
+ grid-template-areas :
2042
+ "main sidebar-cratenav"
2043
+ "main sidebar-toc" ;
2044
+ padding-left : var (--desktop-grid-column-gap );
2045
+ }
2046
+ .rustdoc : not (.src ) .sidebar ,
2047
+ .rustdoc : not (.src ) main {
2048
+ display : contents;
2049
+ }
2050
+ .width-limiter {
2051
+ grid-area : main;
2052
+ width : var (--width-limiter-width );
2053
+ --desktop-sidebar-width : 0 ;
2054
+ }
2055
+ .rustdoc : not (.src ) nav .sub {
2056
+ padding-top : 10px ;
2057
+ }
2058
+ .rustdoc : not (.src ) .doc-sidebar-title {
2059
+ grid-area : sidebar-title;
2060
+ background : var (--sidebar-background-color );
2061
+ position : sticky;
2062
+ top : 0 ;
2063
+ }
2064
+ .rustdoc : not (.src ) .sidebar-crate {
2065
+ margin-bottom : 0.5rem ;
2066
+ }
2067
+ .rustdoc : not (.src ) # TOC ,
2068
+ .rustdoc : not (.src ) # CrateNav {
2069
+ grid-area : sidebar-toc;
2070
+ background : var (--main-background-color );
2071
+ padding-left : 0 ;
2072
+ }
2073
+ .rustdoc : not (.src ) # CrateNav {
2074
+ grid-area : sidebar-cratenav;
2075
+ align-self : middle;
2076
+ }
2077
+ .rustdoc : not (.src ) # ModNav {
2078
+ grid-area : sidebar-modnav;
2079
+ background : var (--sidebar-background-color );
2080
+ padding-left : 0 ;
2081
+ }
2082
+ .rustdoc : not (.src ) # ModNav .in-crate {
2083
+ display : none;
2084
+ }
2085
+ .rustdoc : not (.src ) # TOC section ,
2086
+ .rustdoc : not (.src ) # ModNav section {
2087
+ position : sticky;
2088
+ top : 0 ;
2089
+ bottom : 0 ;
2090
+ overflow-y : scroll;
2091
+ overscroll-behavior : contain;
2092
+ max-height : 100vh ;
2093
+ padding-left : 24px ;
2094
+ }
2095
+ .rustdoc : not (.src ) # TOC .location ,
2096
+ .rustdoc : not (.src ) # ModNav h2 {
2097
+ margin-top : 0 ;
2098
+ }
2099
+ .rustdoc : not (.src ) # ModNav section {
2100
+ top : calc (64px + 0.75rem );
2101
+ max-height : calc (100vh - 64px - 0.75rem );
2102
+ background : var (--sidebar-background-color );
2103
+ border-top : solid 1px var (--border-color );
2104
+ }
2105
+ .rustdoc : not (.src ) # TOC section {
2106
+ max-height : calc (100vh - 0.5rem );
2107
+ top : 0.25rem ;
2108
+ margin : 0 var (--desktop-grid-column-gap ) var (--desktop-grid-column-gap ) 0 ;
2109
+ border : solid 1px var (--border-color );
2110
+ padding : 0.25rem ;
2111
+ }
2112
+ .rustdoc : not (.src ) # CrateNav .block : last-child ,
2113
+ .rustdoc : not (.src ) # TOC .block : last-child {
2114
+ margin-bottom : 0 ;
2115
+ }
2116
+ .rustdoc : not (.src ) # CrateNav a : hover ,
2117
+ .rustdoc : not (.src ) # TOC a : hover {
2118
+ background-color : var (--sidebar-background-color );
2119
+ }
2120
+ }
2121
+ }
2122
+
2009
2123
/* Make sure all the buttons line wrap at the same time */
2010
2124
@media (max-width : 850px ) {
2011
2125
# search-tabs .count {
0 commit comments