123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- /**
- * Admonition-based toggles
- */
- /* Visibility of the target */
- .admonition.toggle .admonition-title ~ * {
- transition: opacity .3s, height .3s;
- }
- /* Toggle buttons inside admonitions so we see the title */
- .toggle.admonition {
- position: relative;
- }
- /* Titles should cut off earlier to avoid overlapping w/ button */
- .toggle.admonition .admonition-title {
- padding-right: 25%;
- cursor: pointer;
- }
- /* hides all the content of a page until de-toggled */
- .toggle-hidden.admonition .admonition-title ~ * {
- height: 0;
- margin: 0;
- float: left; /* so they overlap when hidden */
- opacity: 0;
- visibility: hidden;
- }
- /* General button style and position*/
- button.toggle-button {
- /**
- * Background and shape. By default there's no background
- * but users can style as they wish
- */
- background: none;
- border: none;
- outline: none;
- /* Positioning just inside the amonition title */
- margin-right: 0.5em;
- position: absolute;
- right: 0em;
- top: .5em;
- float: right;
- padding: 0px;
- display: flex;
- }
- /* Display the toggle hint on wide screens */
- @media (min-width: 768px) {
- button.toggle-button.toggle-button-hidden:before {
- content: attr(data-toggle-hint); /* This will be filled in by JS */
- font-size: .8em;
- align-self: center;
- }
- }
- /* Icon behavior */
- .tb-icon {
- transition: transform .2s ease-out;
- height: 1.5em;
- width: 1.5em;
- stroke: currentColor; /* So that we inherit the color of other text */
- }
- details.toggle-details .tb-icon {
- height: 1.3em;
- width: 1.3em;
- }
- .toggle-button-hidden .tb-icon {
- transform: rotate(90deg);
- }
- /**
- * Details-based toggles.
- * In this case, we wrap elements with `.toggle` in a details block.
- */
- /* Details blocks */
- details.toggle-details {
- margin: 1em 0;
- }
- details.toggle-details summary {
- display: flex;
- align-items: center;
- width: fit-content;
- cursor: pointer;
- list-style: none;
- border-radius: .4em;
- border: 1px solid #ccc;
- background: #f8f8f8;
- padding: 0.4em 1em 0.4em 0.5em; /* Less padding on left because the SVG has left margin */
- font-size: .9em;
- }
- details.toggle-details summary:hover {
- background: #f6f6f6;
- }
- details.toggle-details summary:active {
- background: #eee;
- }
- details.toggle-details[open] summary {
- margin-bottom: .5em;
- }
- details.toggle-details[open] summary .tb-icon {
- transform: rotate(90deg);
- }
- details.toggle-details[open] summary ~ * {
- animation: toggle-fade-in .3s ease-out;
- }
- @keyframes toggle-fade-in {
- from {opacity: 0%;}
- to {opacity: 100%;}
- }
- /* Print rules - we hide all toggle button elements at print */
- @media print {
- /* Always hide the summary so the button doesn't show up */
- details.toggle-details summary {
- display: none;
- }
- }
|